C# 无法将数组设置为我的actionresult
我正在尝试获取所有选中复选框的值,并将这些值(整数)发布到操作结果中,问题是我在控制器端得到一个空数组。。。 我的jquery代码如下:C# 无法将数组设置为我的actionresult,c#,jquery,asp.net-mvc,C#,Jquery,Asp.net Mvc,我正在尝试获取所有选中复选框的值,并将这些值(整数)发布到操作结果中,问题是我在控制器端得到一个空数组。。。 我的jquery代码如下: function getIds() { var idList = new Array(); var loopCounter = 0; //find all the checked checkboxes $("input:checked").each ( function()
function getIds() {
var idList = new Array();
var loopCounter = 0;
//find all the checked checkboxes
$("input:checked").each
(
function() {
//fill the array with the values
idList[loopCounter] = $(this).val();
loopCounter += 1;
}
);
//Send the list off
alert(idList);
var postData = { values: idList };
$.post("/Admin/Delete/", postData);
}
我的控制器端代码如下
[AcceptVerbs(HttpVerbs.Post)]
public ActionResult Delete(Int32[] values)
{
try
{
// TODO: Add delete logic here
return RedirectToAction("NewSubDashboard");
}
catch
{
return View();
}
}
发布没有问题,但我在控制器端得到一个空数组…您的
$不应该是这样的吗
$.post("/Admin/Delete/", postData);
因为postData:idList
可能未定义。我从httpcontext中提取了如下值:
HttpContext ctx=System.Web.HttpContext.Current
字符串[]ValArr=ctx.Request.Params.GetValues(0) sry它只是一个输入错误,与$.post(“/Admin/Delete/”,postData)不兼容@3nigma-您是否调试过以查看实际发布的内容以及它在HttpContext
中的位置?我在控制器上得到的只是一个空数组,我在操作结果的开始处添加了一个调试点。。。我是否回答了你的问题:(@3nigma-不太正确。使用Firebug查看post
是否确实有数据。然后在设置断点时,在控制器中向下搜索,直到找到HttpContext,并查看数据是否在那里(假设已发布)@3nigma-在net
选项卡打开并启用的情况下执行此操作。请求和响应应该在那里,并且传输数据。参数的名称是什么?如果使用该名称作为操作的参数名称,则不需要上述代码。