【发布时间】:2021-04-18 23:22:42
【问题描述】:
我有一个仅在选中复选框后才出现的代码块,但该块位于 foreach 内,它会重复多次。当我单击复选框时,第一个有效,第二个重复不再有效。 我该如何解决?
<div class="col-md-12 form-group mb-3" id="2">Adicionar 2ª cor <input type="checkbox" id="isChecked_3"/></div>
<div id="cor4" style="display:none;">
<div class="col-md-12 form-group mb-3">
<label for="sel5"><h6>Selecionar Cor 2:<h6></label>
<select class="form-control" id="sel5" name="{{ $proposedphase->id_proposedphase.'arm_color_2'}}">
<option value="0">Selecionar Cor</option>
@foreach ($colors as $color)
<option value="{{ $color->id_color }}">{{ $color->name }}</option>
@endforeach
</select>
</div>
<script>
$(document).ready(function(){
$('#isChecked_3').change(function(){
if($(this).prop('checked')){
$('#cor4').show();
} else {
$('#cor4').hide();
}
});
});
</script>
【问题讨论】:
-
我认为这是因为
$(document).ready仅在文档准备好时触发一次。 -
@noob,你说得对,
$document.ready()只触发一次,但它设置了一个change事件处理程序,每次所选元素发生更改时都会触发。 -
嗨,你能显示for循环吗?和正确的html
标签: javascript php html laravel bootstrap-4