获取复选框的选中值

时间:2013-01-26 09:30:34

标签: jquery css

我有以下HTML代码:

<tr>
    <td class="right">
        <label class="input-control tiny-checkbox" onclick="">
            <input type="checkbox" value="0"/>
            <span class="helper"></span>
        </label>
    </td>
    ...

我有以下jQuery代码:

$("table tbody tr td").click(function () {
    var col = $(this).parent().children().index($(this));
    var row = $(this).parent().parent().children().index($(this).parent());

    if (col == 0) {
        // col checkbox -> highlight the line (on/off)
        var checked = $(this).children(':checkbox').is(':checked');

即使检查了ckeckbox,检查的var也永远不会成立。我不知道为什么。

有什么想法吗?

2 个答案:

答案 0 :(得分:4)

您必须在find内使用children,因为子项会检查直接子元素, 不是大孩子。

  var checked = $(this).find(':checkbox').is(':checked'); 

答案 1 :(得分:1)

使用find()方法代替children(),因为该复选框不是td的直接子代

$("table tbody tr td").click(function () {
    var col = $(this).parent().children().index($(this));
    var row = $(this).parent().parent().children().index($(this).parent());

    if (col == 0) {
        // col checkbox -> highlight the line (on/off)
        var checked = $(this).find('input:checkbox').is(':checked');
    }
});

演示:http://jsfiddle.net/MShgq/