나는이 이상한 일이 발생했습니다.PartialView가 아약스 포스트 백 이후에 지워지지 않음
3 개의 필드가있는 PartialView가 있습니다. 내 작업 결과에 jQuery 아약스 게시물을 수행하고 모델이 유효성 검사를 통과하면 레코드를 저장합니다. 또한 모델을 비어있는 것으로 설정하고 뷰를 부분 뷰로 다시 전달합니다.
public ActionResult jQueryAddComment(Comment comment)
{
if (ModelState.IsValid)
{
//do stuff here
comment = new Comment();
}
return PartialView("AddNewComment", comment);
}
페이지로 돌아 가면 JS가 주석 부분의 내용을 HTML의 부분보기에서 html로 바꿉니다.
function submitComment() {
$.post('/Home/jQueryAddComment', { forumItemId: $('#id').val(), owner: $('#owner').val(), text: tinyMCE.get('text').getContent(), emailAddress: $('#emailAddress').val() }, function (result) {
alert(result);
$('.AddNewComment').html(result);
});
}
그러나 페이지가 렌더링 될 때 값이 다시 위치합니다. 빈 모델이 뷰에 전달되는 것을 볼 수 있습니다. 그렇다면 왜 이전 값이 여전히 존재합니까?
컨트롤러의 부분보기에 빈 개체를 전달하더라도 경고는 값을 표시합니다.
편집
나는 오류뿐만 아니라 성공적으로 요청을 렌더링하는 동일한 코드를 사용하여 원하는대로 내가 페이지의 JS 내에서 필드를 지울 수 없습니다 언급해야한다.
? 고마워, 지금 큰 작품. – griegs
@griegs, 도움이되었습니다. 이것이 나에게 일어 났을 때 MVC 소스로 뛰어 들어야했다. – jfar