如何禁用一个选项而另一个禁用,反之亦然?我尝试添加两个功能,但似乎没有用。我面临的问题是,当我选择第一个选项时,按钮会启用,但在选择其他选项时,前一个选项仍然可以启用。如何解决这个问题?
<option id="display" onclick="display1(); display2()">Option 1</option>
<script>
var val1="Option 1";
var val2=document.getElementById('display').value;
if (val1==val2) {
function display1() {
document.getElementById('hgt').disabled = false;
document.getElementById('wdt').disabled = false;
}
} else if (val1!=val2) {
function display2() {
document.getElementById('hgt').disabled = true;
document.getElementById('wdt').disabled = true;
}
}
</script>
<option id="text1" onclick="text1(); text2()">Option 2</option>
<script>
var val3="Option 2";
var val4= document.getElementById('text1').value;
if (val3==val4) {
function text1() {
document.getElementById('write').disabled = false;
}
} else if (val3!=val4) {
function text2() {
document.getElementById('text1').disabled = true;
}
}
</script>
</select></br></br>
答案 0 :(得分:0)
你没有开场选择标签,你的代码也与你的html交织在一起。您可能想稍微清理一下
但是,你可以这样做。
var select = document.getElementsByTagName('select')[0];
var option1 = document.getElementById('option1');
var option2 = document.getElementById('option2');
select.addEventListener('change', function(e) {
if (this.value === 'option1') {
option2.setAttribute('disabled', true)
console.log(option2);
}
if (this.value === 'option2') {
option1.setAttribute('disabled', true)
console.log(option2);
}
})
&#13;
<select>
<option> defualt</option>
<option id="option1">option1</option>
<option id="option2">option2</option>
</select>
</br>
</br>
&#13;
答案 1 :(得分:-1)
测试不使用document.getElementById('hgt').disabled = true;
但请改用它
禁用:document.getElementById('hgt').style.display = "none";
激活:document.getElementById('hgt').style.display = "block";