我正在尋找一種方法來將給定類的所有現有複選框的值存儲到某種列表或數組中,並通過jquery將結果發送給asp.net mvc控制器。複選框不必檢查,我需要所有這些。用jquery創建一個列表並將其發佈到asp.net mvc
更多細節:
我的複選框看起來像這樣
<input type="checkbox" value="1" class="a-checkbox"
<input type="checkbox" value="2" class="a-checkbox"
<input type="checkbox" value="3" class="a-checkbox"
這將是很好,如果我的MVC控制器可能看起來像這樣
public JsonResult SaveList(List<String> values) { //... }
我知道我可以訪問該複選框用以下方式
$('input.a-checkbox').each(
function() {
// create the list with the help of $(this).val()
}
);
// jquery post would happen here
但我不知道如何創建這樣的數據結構。你可以幫幫我嗎?
謝謝
編輯:好的,謝謝。你能告訴我這有什麼問題嗎?我的控制器被確實叫,但列表爲空(服務器端)
var list = [];
$('a-checkbox').each(
function() {
list.push($(this).val());
}
);
$.ajax({
type: "POST",
url: myUrl,
data: list,
success: function (data) {
alert(data.Result);
},
dataType: "json",
traditional: true
});
如果值是零它意味着你有一個模型綁定錯誤。下面是一個擴展方法,我用它來將debug錯誤轉儲到調試中的控制檯:http://pastebin.com/S0gM3vqg – asawyer