来自this相关主题,用户留下一个解决方案并且它有效,我提供了第二部分,其中我忘记提及 SELECT 元素应用了 .select2()
。如果您在此处测试一个实例 Fiddle您将看到 button#btnBuscar
如何在输入更改并获取值时或当 SELECT
更改默认选项时启用,但如果我从 INPUT 中删除值或在 SELECT 中选择回默认选项,则按钮不会被禁用,所提供的解决方案的错误在哪里:
$(':input').on('input change', function () {
var completed = $(':input').filter(function () {
return !!this.value;
}).length > 0;
$('button#btnBuscar').prop('disabled', !completed);
});
最佳答案
您可以更改:
<option selected="selected" value="-1">-- SELECCIONAR --</option>
致:
<option selected="selected" value="">-- SELECCIONAR --</option>
或者将js代码调整为:
$(function(){
$('select.toSelect2').select2();
$(':input').on('input change', function () {
var completed = $(':input').filter(function () {
return !!this.value && !$(this).is('select') ||
(this).is('select') && +this.value > -1;
}).length > 0;
$('button#btnBuscar').prop('disabled', !completed);
});
});
关于javascript - 如果至少一个输入有值或者选择更改了默认值,则启用/禁用切换按钮,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26413139/