javascript - 如果第一个选择中的选项 1,则第二个选择被禁用

标签 javascript jquery select

我有两个选择框。我需要禁用整个第二个选择框,直到用户在第一个选择框中选择第一个选项以外的任何选项。

这是我的逻辑,但我不能完全执行它。

if 
     .first-select = option-1 
then 
     .second-select .attr('disabled').
else
     .second-select .removeAttr('disabled')

最佳答案

您可以使用 selectedIndex 属性:

var 
    firstSelect = document.querySelector('.first-select'),
    secondSelect = document.querySelector('.second-select')
;

function changeHandler() {
   secondSelect.disabled = firstSelect.selectedIndex === 0;
}

firstSelect.addEventListener('change', changeHandler);
changeHandler(); // execute the handler once on DOM ready

或者如果您使用的是 jQuery:

$('.first-select').on('change', function() {
   $('.second-select').prop('disabled', this.selectedIndex === 0);
}).change(); // trigger the event once on DOM ready

关于javascript - 如果第一个选择中的选项 1,则第二个选择被禁用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29169646/

相关文章:

javascript - 有必要在 html() 之前或 innerHTML 之前调用 empty() 吗?

javascript - jQuery Nivo slider 中的图像在加载时出现异常

javascript - 如何使用 jQuery 正则表达式拆分以管道符号分隔的字符串

javascript - 如何在nodeJS中使用phantom包设置自定义页眉和页脚内容?

html - Fabric JS : How to Transform Fabric Image

jquery - 使用 jquery 自定义 css 选择框

mysql - 在表中插入 2 个值

select - 从 iOS 15 开始,Safari 上的间歇性 HTML 选择卡住

javascript - 使用 previousSibling 和 nextSibling 设置属性

javascript - 根据数据库中的数据进行多项选择