我的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)填写文本输入 当复选框未选中时清空它
我尝试了很多方法,但没有使用下一个输入
答案 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('');
});