我想将div ID和checked值存储到数组中。
假设我从品牌和检查 samsung 和 lenovo 来自Ram的 4gb ,数组应该是:
array [] = [“brands”=> “三星,联想”,“ram”=> “4GB”]
HTML
<div id="brand">
<input type="checkbox" class="chkbx" value="Samsung">Samsung<br>
<input type="checkbox" class="chkbx" value="Nikon">Nikon<br>
<input type="checkbox" class="chkbx" value="Lenovo">Lenovo<br>
<input type="checkbox" class="chkbx" value="Alcatel">Alcatel<br>
</div>
<div id="ram">
<input type="checkbox" class="chkbx" value="2 GB">2 GB<br>
<input type="checkbox" class="chkbx" value="3 GB">3 GB<br>
<input type="checkbox" class="chkbx" value="5 GB">5 GB<br>
<input type="checkbox" class="chkbx" value="6 GB">6 GB<br>
</div>
从服务器动态抓取div。这只是一个例子,有多个div,并且它们的ID是未知的。
任何帮助表示赞赏。
提前致谢。
答案 0 :(得分:1)
尝试使用具有与元素Object
相同属性的id
,将与元素id
具有相同名称的属性设置为选定的input
值
var res = {
"brand": "",
"ram": ""
};
$("#brand, #ram").on("change", function(e) {
var val = e.target.value;
// if `e.target.value` `val` begins with character `a-z` , case insensitive
// set `brand` property of `res` with `val` ,
// else set `ram` property with `val`
res[/^[a-z]/i.test(val) ? "brand" : "ram"] = e.target.value;
console.log(res);
});
&#13;
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js">
</script>
<div id="brand">
<input type="checkbox" class="chkbx" value="Samsung">Samsung
<br>
<input type="checkbox" class="chkbx" value="Nikon">Nikon
<br>
<input type="checkbox" class="chkbx" value="Lenovo">Lenovo
<br>
<input type="checkbox" class="chkbx" value="Alcatel">Alcatel
<br>
</div>
<div id="ram">
<input type="checkbox" class="chkbx" value="2 GB">2 GB
<br>
<input type="checkbox" class="chkbx" value="3 GB">3 GB
<br>
<input type="checkbox" class="chkbx" value="5 GB">5 GB
<br>
<input type="checkbox" class="chkbx" value="6 GB">6 GB
<br>
</div>
&#13;