1- Перейти в «Файл».
2- Нажмите на Invalidate Cache / Restart.
3- Снова нажмите Invalidate Cache / Restart (В окне диалога).
Пусть грейдер строится без перерыва.
Надеюсь, это поможет.
Необходимо было бы использовать в своих интересах 'успех' (или 'завершенный') событие, которое запущено jQuery ajax, звонят для увольнения последующего призыва Ajax к обновлению содержания обзоров. Это, вероятно, посмотрело бы что-то как (крылатый это, непротестированный):
function UpdateComments(){
resultHTML = jQuery.ajax({
type: 'GET',
url: 'Comments/List/UserID'
}).responseText;
$('#comments').html(resultHTML);
}
function PostComment(targetUserID, commenterUserID, comment)
jQuery.ajax({
type: 'POST',
contentType: 'application/json; charset=utf-8',
data: $.toJSON({review: comment, id:targetUserID, commenter:commenterUserID}),
dataType: 'json',
url: 'Comments/Add',
success: function(result){
// Only update comments if the post was successful:
resultJson = $.evalJSON(result);
if(resultJson['success'] == true){
UpdateComments();
}
}
});
РЕДАКТИРОВАНИЕ код JSON использовал бы jquery-json плагина jQuery ( http://code.google.com/p/jquery-json/ )
В ответ на Матовый другой способ отправить данные формы вместо JSON, Вы могли назвать $ ('#form') .serialize () в поле 'данных' функции jQuery.ajax. Это избавило бы от необходимости плагин.
кроме того, я не эксперт по этому предмету, все еще пытаясь изучить это сам, но действительно ли необходимо иметь обоих POST и ПОЛУЧИТЬ запрос, когда Вы могли вставить ответ с ASP.NET MVC в страницу вместо этого? Это привело бы к одному запросу. Могла бы быть допустимая причина того подхода все же. Я предполагаю, что мой был бы похож на это:
// The Controller Action should return a PartialView as response,
// so just a user control that contains the comments.
function PostComment(targetUserID, commenterUserID, comment)
jQuery.ajax({
type: 'POST',
data: $('#commentForm').serialize(),
url: 'Comments/Add',
success: function(result){
$('#comments').html(result);
}
}
});