Asp.net mvc 3 如何接受通过ajax传递的值

Asp.net mvc 3 如何接受通过ajax传递的值,asp.net-mvc-3,jquery,Asp.net Mvc 3,Jquery,我编写了一个代码来传递用户通过单击复选框选择的记录的id 点击bttn提交,调用以下代码 $("#button").click(function () { var selected = $(".a:checked").map(function() { return this.id; }).get(); var urlDistricts = '@Url.Action("selectedId")'; $.ajax({ type: "POST", url: urlD

我编写了一个代码来传递用户通过单击复选框选择的记录的id

点击bttn提交,调用以下代码

  $("#button").click(function () {

 var selected = $(".a:checked").map(function() {
    return this.id;
}).get();

var urlDistricts = '@Url.Action("selectedId")';
$.ajax({
    type: "POST",

    url: urlDistricts,
    data: { listofid:selected },
    success: function () {

    }
});
});
为了捕捉到这一点,我在控制器中写了以下内容

    [HttpPost]
    public ActionResult selectedId(List<int> listofid)
    {
        return View();
    }
[HttpPost]
公共行动结果SelecteId(列表ID)
{
返回视图();
}

但是listofid为cuming null

设置
传统:true
参数:

$.ajax({
    type: "POST",
    url: urlDistricts,
    traditional: true,
    data: { listofid: selected },
    success: function (result) {

    }
});
此外,您的代码似乎也有问题。您正在检索所选复选框的ID。因此,我可以假设您的标记如下所示:

<input class="a" type="checkbox" id="1" name="id1" />
<input class="a" type="checkbox" id="2" name="id2" />
<input class="a" type="checkbox" id="3" name="id3" />
...
然后:

var selected = $(".a:checked").map(function() {
    return $(this).data('id');
}).get();

因此,复选框具有要发送的
id
属性?你能展示一下你的标记吗?
var selected = $(".a:checked").map(function() {
    return $(this).data('id');
}).get();