使用jquery ajax和MVC2“POST”数据

时间:2015-08-04 15:46:06

标签: jquery ajax asp.net-mvc

我正在使用MVC2,我正在尝试使用jquery ajax发送数据。

有我的JS代码:

$.ajax({
    type: "POST",
    url: "Data",
    data: { processName: "MyProc", startDate: "2015-08-01 16:00"},
    success: function(data) {
    }
});

还有我的控制器:

[HttpPost]
public JsonResult Data(string processName, string startDate)
{
    int i = 1;
}

所以我的问题是我在控制器中到达"int i=1;"行, 但由于某些未知原因 - processNamestartDate都是null

有人可以帮忙吗?

3 个答案:

答案 0 :(得分:1)

尝试制作模型并将其用于操作中的参数

  public class MyModel
{
    public string processName { get; set; }

    public string startDate { get; set; }
}

然后

[HttpPost]
    public JsonResult Data(MyModel model)
    {
       int i = 1;
        //model.processName
        //model.startDate

     }

答案 1 :(得分:0)

尝试在jquery代码中添加内容类型和数据类型+字符串化您的数据:

$.ajax({
  type: "POST",
  url: "Data",
  data: JSON.stringify({ processName: "MyProc", startDate: "2015-08-01 16:00"}),
  dataType: "json",
  contentType: "application/json; charset=utf-8",
  success: function(data) {
  }
});

答案 2 :(得分:0)

    $.ajax({
                url: '@Url.Action("ActionName", "ControllerName")',
                type: 'POST',
                data:  JSON.stringify({ processName: "MyProc", startDate: "2015-08-01 16:00"}),
                contentType: 'application/json; charset=utf-8',
                success: function (responseData) {
    }
    });