在tr>中检查jQuery foreach复选框;第一个td

时间:2013-01-18 21:02:46

标签: javascript jquery

我想遍历表行,并获取第一个td中每个tr中检查的每个复选框的id和名称,并将其保存在名为values ex:values.id,values.name

由于

<table>
    <tr>
        <td>
            <input id="1" type="checkbox" name="name1" checked="checked">
        </td>
        <td>
            Some input control 1
        </td>
    </tr>
    <tr>
        <td>
            <input id="2" type="checkbox" name="name2">
        </td>
        <td>
            Some input control 2
        </td>
    </tr>
</table>

2 个答案:

答案 0 :(得分:3)

<强> Working example

aRecord是一个对象数组,每个对象都包含表中找到的每个复选复选框的名称和ID。

$(document).ready(function() {
   var aRecord = [];
    $('#your_table input:checkbox:checked').each(function() {
        var oChkBox = {};
        oChkBox.name = $(this).attr('name');
        oChkBox.id = $(this).attr('id');
        aRecord.push(oChkBox);
    });

    var i = aRecord.length;
    while (i--) {
        alert("Name: "+ aRecord[i].name   + " ID: "+ aRecord[i].id);
    }

});

答案 1 :(得分:0)

http://jsfiddle.net/tracyfu/r6RMV/

var values = {};

$('tr input:checked').each(function(i) {
  values[i] = [];
  values[i].push($(this).attr('id'));
  values[i].push($(this).attr('name'));
});

将产生:

values = { [1, 'name1'] }

我按原样离开此解决方案,因为您明确表示要将值存储在名为object的{​​{1}}中,但不知道您将如何处理数据,我会将值存储在数组中而不是......