我有一堆复选框,用户可以一次选中一个或多个。我需要将所有选中的复选框抓取到一个数组中,然后从数组中抓取每个值并将每个值推送到查询字符串变量。
<div class="Cat" style="width: 155px; float: left; margin-left:15px;">
<p>Location</p>
<div><input class="LocChk" type="checkbox" value="United States"/> United States<br/></div>
<div><input class="LocChk" type="checkbox" value="Australia"/> Australia<br/></div>
<div><input class="LocChk" type="checkbox" value="Canada"/> Canada<br/></div>
<div><input class="LocChk" type="checkbox" value="China"/> China<br/></div>
</div>
因此,我不想在以下查询变量中对所选值进行硬编码,而是想传递数组中的检查值。假设用户检查了加拿大和中国,我需要将这两个值存储在一个数组中,然后在下面的查询变量中按顺序访问它们。有人可以告诉我一种在 jQuery 中执行此操作的有效方法吗?
var queryText = "<View>"+
"<Query>"+
"<Where>"+
"<In>"+
"<FieldRef Name='HSCountry' />"+
"<Values>"+
"<Value Type='Choice'>Canada</Value>"+
"<Value Type='Choice'>China</Value>"+
"</Values>"+
"</In>"+
"</Where>"+
"</Query>"+
"<ViewFields><FieldRef Name='Title' /></ViewFields>"+
"</View>";
最佳答案
哦,这就是我喜欢 .map()
函数的原因:
var checkboxArray = $(".LocChk:checked").map(function() {
return this.value;
}).get();
关于javascript - 将选中的复选框推送到数组并从数组中获取值以构建查询字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18666653/