使用Jquery将多个复选框值传递给操作
我有一点小问题,这让我很恼火 我有一个页面,根据搜索生成复选框列表。页面中还有一个对话框,用于在按下按钮时显示。我试图做的是从复选框中获取值,并将它们传递给控制器操作,然后控制器操作返回对话框的部分值 我遇到的问题是,我从复选框中获取值,但它们没有传递到控制器中的操作。不知道我错过了什么 我正在使用的jquery脚本使用Jquery将多个复选框值传递给操作,jquery,asp.net-mvc-2,Jquery,Asp.net Mvc 2,我有一点小问题,这让我很恼火 我有一个页面,根据搜索生成复选框列表。页面中还有一个对话框,用于在按下按钮时显示。我试图做的是从复选框中获取值,并将它们传递给控制器操作,然后控制器操作返回对话框的部分值 我遇到的问题是,我从复选框中获取值,但它们没有传递到控制器中的操作。不知道我错过了什么 我正在使用的jquery脚本 var create_dialog = jQuery("#main div#list_dialog"); // AddToList is a button for
var create_dialog = jQuery("#main div#list_dialog");
// AddToList is a button for sending values to the action
$("#AddToList").live("click", function() {
var myData = new Array();
var i = 0;
$("input:checkbox[@name='ID']").each(
function() {
if (this.checked) {
myData[i] = this.value;
i++;
}
});
create_dialog.load(
Jurat.Path.createActionPath("List", "ListValues"),
{ ID: myData },
function() {
create_dialog.dialog("open");
create_dialog.find("form").validate();
});
});
控制器动作
[HttpPost]
public ActionResult ListValues(string ID)
{
// Removed manipulation details
return PartialView("ListSelection", Data);
}
我不能百分之百确定jQuery和create_对话框到底发生了什么,但在我看来,您正在向控制器传递一个数组,而控制器只是在寻找一个字符串 我认为您需要将控制器更改为:
[HttpPost]
public ActionResult ListValues(string[] ID)
{
// Removed manipulation details
return PartialView("ListSelection", Data);
}