好的,如果下拉/选择的值包含'请指定',我想在“请注明”文本框中添加所需的属性。
我可以使用下面的代码使此字段验证单个值,但似乎无法检查所有选项。需要检查所选的任何选项是否都有“请指定”,如果是,则应用所需的属性。我已经尝试了一百万种不同的方法,并尝试使用数组,但无法想象它。当然这很容易,但任何帮助都会很棒。非常感谢提前!
HTML: 我的选择字段
<select name="billing_customer_info" id="billing_customer_info" class="select " data-placeholder="Please select an option" allow_null="0" nulllabel="Please select an option" presentation="select" display="" hasselected="false">
<option value="Internet search Please specify">Internet search Please specify</option>
<option value="Friend told me">Friend told me</option><option value="Advertisement Please specify">Advertisement Please specify</option>
<option value="Sticker">Sticker</option>
<option value="Newspaper or magazine Please specify">Newspaper or magazine Please specify</option>
<option value="Social media Please specify">Social media Please specify</option>
<option value="Festival or show Please specify">Festival or show Please specify</option>
<option value="In a shop">In a shop</option>
</select>
我的字段需要添加属性如果选择了请指定
<input type="text" class="input-text " name="billing_please_specify_here" id="billing_please_specify_here" placeholder="enter more information" display="text">
Jquery的:
$('select[name=billing_customer_info]').change(function () {
if ($('select[name=billing_customer_info]').val() == 'Internet search Please specify'){
$('input[name=billing_please_specify_here]').attr("required", true);
} else {
alert ('I dont need to be mandatory');
$('input[name=billing_please_specify_here]').attr("required", false);
}
});
答案 0 :(得分:2)
使用indexOf
函数检查所选值是否包含please specify
。要添加required
属性,请使用attr("required", "required")
并删除使用removeAttr("required")
。你可以这样做。
$('select[name=billing_customer_info]').change(function () {
if ($(this).val().toLowerCase().indexOf('please specify')>-1) {
$('input[name=billing_please_specify_here]').attr("required", "required");
} else {
alert('I dont need to be mandatory');
$('input[name=billing_please_specify_here]').removeAttr("required");
}
});