2
我有一個控制器:正確的方式JSON數組發送到MVC4控制器動作
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的一個視圖...發送值爲data-params
屬性víaqueryString Fancybox href:
...
options.params = JSON.parse($(this).attr("data-params"));
var query = $.toQueryString(options.params);
...
問題:好吧,如果我只有一個複選框被選中,這是可以工作的。如果我有不止一個,則活頁夾失敗,參數爲空。
數據-PARAMS屬性的內容是:
{"ids":["4","6"]}
當我只有一個值(和作品)的內容是:
{"ids":["4"]}
這個問題是更傳統的參數傳遞給ajax的方式......我們使用查詢字符串而不是數據參數。 QueryString可以很好地處理單個值......但不適用於數組。謝謝! – Romias