【发布时间】:2012-12-17 20:09:31
【问题描述】:
我有一个控制器:
public virtual ActionResult CreateMultiple(int[] ids)
{
...
}
在 JS 中,我得到所有选中的复选框,将其转换为 int 数组:
var params = [];
$("input:checkbox:checked.checkedPersons").each(function () { params.push($(this).val()); });
$("a.modalFormLink").attr("data-params", JSON.stringify( { "ids": params }));
然后,一旦我单击该链接,我所做的就是显示一个带有视图的 Fancybox... 通过 Fancybox href 中的 queryString 发送 data-params 属性的值:
...
options.params = JSON.parse($(this).attr("data-params"));
var query = $.toQueryString(options.params);
...
问题:好吧,如果我只选中了一个复选框,这在某种程度上是可行的。如果我有多个,则 binder 失败并且参数为 null。
data-params 属性的内容是:
{"ids":["4","6"]}
当我只有一个值(并且有效)时,内容是:
{"ids":["4"]}
【问题讨论】:
标签: jquery arrays json asp.net-mvc-4 fancybox-2