输入不为空时选中复选框

时间:2014-01-28 21:13:52

标签: javascript jquery

我有项目列表,我需要在价格输入为空时将复选框选中的值设置为true,如果不是,则需要设置为false。

<td><input type="text" value="" class="name"></td>
<td><input type="text" value="" class="producer"></td>
<td><input type="text" value="" class="model"></td>
<td><input type="text" value="" class="dateOf"></td>
<td><input type="text" value="" class="color"></td>
<td><input type="text" value="" class="price"></td>

修改:

<td><input type="checkbox" class="checkbox"></td>

并且有我的jquery函数:

$(function() {
    $('.price').on('input', function() {
        if (!$('.price').val()) {
            $(this).closest('td').next().find('.checkbox').prop("checked", true);
        }else{
             $(this).closest('td').next().find('.checkbox').prop("checked", false);
        }

    });
});

问题是它只适用于第一个&#34;价格&#34;输入,如何使它适用于所有人?

2 个答案:

答案 0 :(得分:2)

使用 关键字

if (!$(this).val()) {

而不是

if (!$('.price').val())

如果类price有多个输入,关键字this将处理您要更改的特定输入.price的事件。

答案 1 :(得分:1)

尝试

$('.price').keyup(function () { 
    $(this).closest('td').next().find('.checkbox').prop("checked", !$(this).val());
});