#asp.net-mvc #templates #jquery
#asp.net-mvc #шаблоны #jquery
Вопрос:
Таким образом, у меня есть возможность оставлять комментарии на моем сайте. Пользователь вводит поле, нажимает «опубликовать», и я отправляю комментарий обратно в базу данных, которая обрабатывает его в результате этого действия
public ActionResult PostComment(Comment NewComment)
{
var repository = GetRepository<Comment>();
var player = GetPlayer();
//we have this stuff
NewComment.Created = DateTime.Now;
NewComment.Updated = NewComment.Created;
NewComment.Live = true;
NewComment.Player = player;
repository.Add(NewComment);
return new JsonResult { Data = new { Success = true, Comment = new CommentSummary(NewComment, player) } };
}
Это повторный возврат к моему jquery, который использует шаблон jquery для отображения комментария на странице
$.post("/comments/PostComment", data, function(json) {
if(json.Success){
var newComment = [
{
Id: json.Comment.id,
postedOn: json.Comment.postedOn,
postedBy: json.Comment.postedBy,
body: json.Comment.body
}
];
/* Compile markup string as a named template */
$.template("TmplComment", $("#CommentTemplate").html());
/* Render the named template */
$.tmpl("TmplComment", newComment).prependTo("#AllComments");
//Do some tidying
$('#Comments_HasComments').show();
$('#Comments_HasNoComments').hide();
$("#frmPostComment textarea[name='comment']").val('')
//go to your comment
$("#Comment_" json.Comment.id).animate({backgroundColor: "#F4FF8C"}, 1000 ).animate({backgroundColor: "#ffffff"}, 1000 );
location.href = "#Comment_" json.Comment.id;
}
});
по какой-то причине у меня возникают проблемы с кодированием HTML, поскольку любые введенные пользователем данные будут преобразованы в
при обратной публикации, но шаблон jquery помещает их на страницу в полном виде, а не просто в часть кода
есть ли что-то, что мне нужно включить / выключить??
Ответ №1:
Используете ли вы {{html}} тег шаблона для тела комментария?
Комментарии:
1. отлично, и вы открыли мне глаза на гораздо больше материала для шаблонов jquery, спасибо!!