我想要实现的是,当输入值为 0 或不存在时,#alert 应该能够显示。当输入值不是 0 时,即使选择了另一个选项,它也应该保持隐藏状态。
它应该像这样工作:
1) 选择一个选项
2)出现警告
3) 填充输入(0除外)
4)警报消失
5) 除非输入值更改为 0 或删除,否则它不会出现,即使您再次更改选项也是如此
jQuery('#mydiv').after('<span id="alert">alert</span>');
jQuery('select').change(function() {
jQuery('#alert').toggle(this.value !== '');
});
#alert {
display: block;
display: none;
}
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.2.1/jquery.min.js"></script>
<div id="mydiv">
<select>
<option>1</option>
<option>2</option>
<option>3</option>
</select>
</div>
<input value="">
最佳答案
试试这个:
jQuery('#mydiv').after('<span id="alert">alert</span>');
jQuery('select').change(function() {
var input_val = jQuery('#some_input').val();
var show_alert = (input_val == 0 || input_val == "");
show_hide_alert(show_alert);
});
jQuery('#some_input').change(function() {
var val = $(this).val();
var show_alert = ( val == 0 || val == "" );
show_hide_alert(show_alert);
});
function show_hide_alert(show) {
if( show ) {
jQuery('#alert').show();
} else {
jQuery('#alert').hide();
}
}
#alert {
display: block;
display: none;
}
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.2.1/jquery.min.js"></script>
<div id="mydiv">
<select>
<option>1</option>
<option>2</option>
<option>3</option>
</select>
</div>
<input id="some_input" value="">
关于jquery - 根据 jQuery 中的输入值更改函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46077193/