Jquery ajax發佈請求將null json對象發佈到mvc控制器。 任何想法,爲什麼這可能是?Ajax發佈null Json對象到mvc 4控制器
乾杯
這裏是我的模型
public class CommentModel
{
public string EmailAddress { get; set; }
public string Name { get; set; }
public int ActivityId { get; set; }
public string CommentText { get; set; }
}
控制器
[HttpPost]
public ActionResult Index(CommentModel commentModel)
{
int i = commentModel.ActivityId;
string k = commentModel.CommentText;
return View();
}
JQuery的
$("#CommentForm").submit(function() {
var formDataAsJson = GetFormDataAsJson();
$.ajax({
url: $(this).attr("action"),
dataType: 'json',
type: "POST",
data: JSON.stringify({ commentModel: formDataAsJson }),
contentType: 'application/json; charset=utf-8',
success: function (data) {
$("#commentsection").append(data);
}
})
});
function GetFormDataAsJson() {
var emailInput = $("#InputEmailAddress").attr("value");
var name = $("#InputName").attr("value");
var comment = $("#some-textarea").attr("value");
var activityid = parseInt($("#ActivityID").attr("value"));
var formObject = {
EmailAddress: emailInput,
Name: name,
ActivityId: activityid,
CommentText:comment
}
return formObject;
}
爲什麼不使用'data:$('#formId')。serialize()'?或'數據:JSON.stringify(formDataAsJson),' –
嗨。試圖學習json我認爲這個練習將是一個好的開始。但似乎需要很長時間。 –
當你在你的視圖中使用強類型助手時,你直接發佈你的表單到ajax數據中,比如:'data:$('#formId')。serialize()' –