检查jquery时填充文本输入

时间:2017-01-17 12:21:14

标签: javascript jquery html checkbox

我的laravel项目中有一个循环,其中包含复选框和输入

@foreach($s as $sh)
<tr>
<td><input type="checkbox" name="service_id[]" class="checkser" value="{{$sh->id}}"></td>
<td class="checkservice">{{$sh->name}}</td>
<td> <input type="text" class="form-control checkser inputservice" placeholder="{{trans('home.quantity')}}" name="ser_quantity[]" ></td>
<td>{{$sh->price}}</td>
</tr>
@endforeach

我需要在选中复选框时用(1)填写文本输入 当复选框未选中时清空它

我尝试了很多方法,但没有使用下一个输入

2 个答案:

答案 0 :(得分:2)

尝试jQuery is()方法

if($(".checkser").is(':checked'))
    $(".inputservice").val(1);  // checked
else
    $(".inputservice").val('');  // unchecked

只需使用$(selector).is(':checked')

即可

返回布尔值值。

答案 1 :(得分:2)

您可以使用jquery执行此操作,并将change事件处理程序绑定到checkbox

另外,请使用closest方法。参见参考here

$('.checkser').change(function() {
    if($(this).is(":checked")) {
       $(this).closest('tr').find('.inputservice').val(1);
    }
    else
       $(this).closest('tr').find('.inputservice').val('');        
});