将已检查元素的值分配给数组

时间:2015-06-23 14:41:02

标签: jquery arrays html-form

我正在尝试将已选中复选框的值放入数组中,以便我可以使用这些值来构建要针对数据库运行的自定义SQL语句。

将其视为非技术人员的Select Query Builder。

我似乎无法将这些值放入数组中。任何提示都会受到欢迎。

示例HTML:

<input type="checkbox" value="cat">Cat<br>
<input type="checkbox" value="dog">Dog<br>
<input type="checkbox" value="turtle">Turtle<br>
<input type="text" id="demo" hidden>
<input id="button" type="submit" value="Submit">

示例JQuery:

$(document).ready(function(){
    $("#button").click(function(){
        var i;
        var x = $(":checkbox:checked").toArray()
        for (i = 0; I < x.length; i++) {
            $("#demo").append(x.[i] + ", ");
        }
    });
});

1 个答案:

答案 0 :(得分:0)

在jquery中使用.map()。将数组或对象中的所有项目转换为新的项目数组。

var x = $("input[type=checkbox]:checked").map(function() {
     return this.value;
}).get();
$("#demo").val(x.join(", "));

Sample jsfiddle