json附加表中的复选框不起作用

时间:2013-12-14 09:35:28

标签: jquery json checkbox append

我的问题是,我创建了一个 json 表,信息来自 mysql数据库。反正这不是问题。我可以在附表上显示信息,复选框在那里但是!!!!只有第一行中的第一个复选框才有效。这是我的代码:

$.ajax({
    type: 'GET',
    url: 'scripts/actions/get.php',
    dataType: 'json',
    success: function(data) {
        $.each(data,function(i,user){
        $('tr:odd').addClass('odd');
            var tblRow =
                "<tr>"
                +"<td><input name='chk' type='checkbox' id='chk' myid = "+user.id+"></td>"
                +"<td>"+user.id+"</td>"
                +"<td>"+user.name+"</td>"
                +"<td>"+user.principal+"</td>"
                +"<td>"+user.admin_contact_person+"</td>"
                +"<td>"+user.telephone_number+"</td>"
                +"<td>"+user.fax_number+"</td>"
                +"<td>"+user.contact_person_email+"</td>"
                +"</tr>";

                $(tblRow).appendTo("#tbody");

                });
            }
        });

有些人可以对此有所了解......:)

2 个答案:

答案 0 :(得分:1)

+"<td><input name='chk' type='checkbox' id='chk' id = "+user.id+"></td>"

问题: 你使用id 2次 如果你需要这个以我建议的形式工作:

+"<td><input name='"+user.id+"' type='checkbox' id='chk'/></td>"

因为每个复选框都需要不同的名称......

答案 1 :(得分:0)

更改为:

            +"<td><input name='chk[]' type='checkbox' class="chk" value='"+user.id+"'></td>"

然后您可以使用

$(".chk:checked")

获取已选中的所有复选框的集合。您可以使用.each()遍历它们以获取其值,以了解已检查过哪些用户。