ASP.NET MVC JSON将HTML表单发布到视图?

And*_*rew 4 c# asp.net-mvc jquery json

我有以下代码:

jQuery的:

$.ajax({
    url: '/personcontroller/getperson',
    cache: false,
    type: "POST",
    data: $('#person').serialize(),
    success: function(data) {
      alert('yay');
    }
    });
});
Run Code Online (Sandbox Code Playgroud)

控制器:

public ActionResult getPerson(Person person)
{
    return new Json(person);
}
Run Code Online (Sandbox Code Playgroud)

Html Form/Spark:

<form id="person">
   <input id="person.Id" type="hidden" value="${ViewData.Model.Person.Id}" />
   <input id="person.Name" value="${ViewData.Model.Person.Name}"></input>
   <input id="person.Age" value="${ViewData.Model.Person.Age}"></input>
   <input value="${ViewData.Model.Person.Gender}"></input>
</form>
Run Code Online (Sandbox Code Playgroud)

当我用表单发布ajax调用时,在我的操作中放置一个断点.人物对象没有填充输入值,我觉得我忽略了一些非常简单的事情......你能不能指出我:

Mic*_*uso 5

输入需要name属性才能正确发布.您应该添加与Id匹配的name属性.

<form id="person">
   <input id="person.Id" name="person.Id" type="hidden" value="${ViewData.Model.Person.Id}" />
   <input id="person.Name" name="person.Name" value="${ViewData.Model.Person.Name}"></input>
   <input id="person.Age" name="person.Age" value="${ViewData.Model.Person.Age}"></input>
</form>
Run Code Online (Sandbox Code Playgroud)