首页 > 解决方案 > 复选框使选择输入使用 jquery 所需的 foreach

问题描述

我有一个包含这些输入的注册表单:您可以使用复选框检查并使用额外选项选择的选项。两者都使用 foreach。所以,我希望如果您选中一个选项,则需要选择带有该选项的额外选项的选择

我曾尝试使用 jquery 使额外选项选择成为必需,但现在当我选中其中一个复选框时,它使所有选择成为必需。如果我取消选中所有复选框,则仍然需要选择。

jQuery

if(this.checked){                           
$('.extraoption').attr('required', 'True');
}
else{                           
    $('.extraoption').attr('required', 'False');
}

html

<label>Options</label><br>
@foreach($option_array as $option)  
<div>
<input type="checkbox" class="option" id="option_{{ $option->exa_id }}" name="option_{{ $option->exa_id }}" value="{{ $option->exa_id }}" {{ isset($cache) ? (isset($cache['option_' . $option->exa_id]) ? 'checked' : '')  : (old() ? (old('option_' . $option->exa_id) ? 'checked' : '') : ($registration ? (in_array($option->exa_id, $registration_options) ? 'checked' : '') : '')) }} >
<input type="hidden" value="{{ $option->exa_prijs }}" class="option_prijs_{{ $option->exa_id }}">
<label>{{ $option->exa_naam }}</label> <label class="exa_prijs">  €{{ $option->exa_prijs }} </label>    
</div>

<select name="extraoptions_{{ $option->exa_id }}" class="form-control extraoption">
<option></option>
@foreach($option->extraoptions as $extraoption)
<option value="{{ $extraoption->eos_id }}" {{ ($inschrijving ? (in_array($extraoption->eos_id, $inschrijving_options_extra) ? 'selected' : '') : '') }}>{{ $extraoption->eos_name }}</option>
@endforeach
</select>
<br>
@endforeach     

有人可以帮我解决这个问题吗?提前致谢!

标签: phpjquerylaravel

解决方案


使用元素 id 而不是类,在您的代码中它将设置所有元素都需要一个类名“extraoption”。


推荐阅读