我做了一些复选框以及一个按钮,在提交时调用一个函数,我想获取已经检查过的复选框的所有值。
创建这些复选框的代码是:
for (var loop=0; loop < count; loop++)
{
var chap = document.createElement("input");
chap.type = "checkbox";
chap.value = nearby[loop];
chap.id = nearby[loop];
document.getElementById("mapdisplay").appendChild(chap);
var nearo = nearby[loop];
var s = document.getElementById("mapdisplay");
var text = document.createTextNode(nearby[loop]);
s.appendChild(text);
var br = document.createElement('br');
s.appendChild(br);
}
现在我想检索被检查的值。我正在尝试这个(但没有提供)
function fsearch()
{
var p = x;
var narr = new Array();
narr=nearby;//a global arr
var checked_vals = new Array();
$('#mapdisplay input:checkbox:checked').foreach()
{
checked_vals.push(this.value);
}
请建议检索生成值的已检查值id
的内容是否为数组形式。我无法使用$("#nearby[0]").val()
。
答案 0 :(得分:5)
var checkedCheckBoxesValueArray = $('#mapdisplay input:checkbox:checked').map(
function(){
return this.value;
}).get();
答案 1 :(得分:1)
正确的语法是:
$('#mapdisplay input:checkbox:checked').each(function(index) {
checked_vals.push($(this).val());
});
实时测试案例:http://jsfiddle.net/e6Sr3/