모달 팝업에서 표시 할 부분보기 (양식)가 있습니다. 제출시 데이터베이스에 새 항목이 작성됩니다. 이것은 ajax 호출을 통해 수행되어야합니다. ajax 호출에서 모든 양식 필드를 전달하려면 어떻게합니까? 나는 MVC4를 사용하고있다.아약스를 통해 부분보기 제출
$ ('form'). serialize()를 시도했지만 잘못된 JSON 프리미티브가 발생합니다. 내가 도대체 뭘 잘못하고있는 겁니까?
var dataToSend = $('form').serialize();
$.ajax({
url: urlForSaving,
data: dataToSend,
cache: false,
type: 'POST',
dataType: 'json',
contentType: "application/json;charset=utf-8",
success: function (data, status) {
},
error: function (xhr, ajaxOptions, thrownError) { alert('error') }
});
컨트롤러
[HttpPost]
public JsonResult Add(SomeModel model)
{
if (ModelState.IsValid)
{
RedirectToAction("Index");
}
return Json(new {
Success = false,
Message = "Validation Errors"
});
}
나는 이것이 가능하다는 것을 알고있다. 그러나 이것은 더 깨끗한 접근법이 아닙니다. 나중에 양식에 필드를 하나 더 추가하면 아약스 호출도 변경해야합니다. 이것이 유일한 접근 방법인지 또는 더 나은 방법이 있는지 알고 싶습니다. – annantDev
@annantDev : 이것은 최선의 방법이며, 만약 당신이 정말로 뭔가 다른 것을 찾고 있다면, "FormCollection"을 사용하여 그것을 할 수 있습니다. 단지 그것을 내 보내세요. 그러나 당신은 당신의 아약스 기능을 떨어 뜨려야 할 것입니다. 도움이 ... –