我想出了看起來像這樣的代碼:
var jsonObject = {};
$('.input-row').each(function(index, row) {
var innerObject = {};
$(':checkbox', row).each(function(index, checkbox) {
innerObject[checkbox.name] = checkbox.checked ? 'on' : 'off';
});
var key = $('input[type="text"]', row).val();
jsonObject[key] = innerObject;
});
console.log(jsonObject);
// use jsonObject somehow
我們正在創建一個空對象,它將成爲我們的整體JSON對象(稱爲jsonObject
)。
然後我們遍歷每個輸入行(我已經添加了一個input-row
類,因此可以輕鬆地選擇它們)。
對於每一行,我們創建另一個空對象(稱爲innerObject
),然後迭代其複選框。對於每個複選框,我們將一個屬性添加到innerObject
:關鍵是複選框的name
屬性/屬性,值爲on
或off
,具體取決於checked
狀態。最後,我們得到該行text
輸入的值作爲jsonObject
中的密鑰,並將該屬性添加到該行中。
這是上述代碼的working example。
如果您要接受我的建議,請使用malsup的[form plugin](http://jquery.malsup.com/form/#getting-started) – 2013-02-19 15:36:34
我快速瀏覽了一下。但它不會把結果放在我想要的格式中...... – Anthony 2013-02-19 15:42:59