我有一个选择框
<select id="box1" onchange="turnOff();" onclick="show();">
<option value="1" >1</option>
<option value="2" >2</option>
</select>
和
<p id="helpMessage" style="display: none;" >something</p>
和js代码是
function turnOff(){
document.getElementById('helpMessage').style.display = 'none';
}
function show(){
document.getElementById('helpMessage').style.display = 'block';
}
问题它显示消息onclick,但onchange无法正常工作
答案 0 :(得分:1)
您的代码确实有效。这是因为您同时附加了点击和更改处理程序,它会同时触发。您的onchange事件使显示为空,但同时也会触发点击事件,这就是您能够看到文本的原因。
编辑:
function turnOff(){
document.getElementById('helpMessage').style.display = 'none';
}
function show(btn){
document.getElementById('helpMessage').style.display = 'block';
btn.onclick = function(){};
}
&#13;
<select id="box1" onchange="turnOff();" onclick="show(this);">
<option value="1" >1</option>
<option value="2" >2</option>
</select>
<p id="helpMessage" style="display: none;" >something</p>
&#13;
答案 1 :(得分:0)
<select id="box1" name="form_select" onchange="turnOff(this)">
<option value="1" >1</option>
<option value="2" >2</option>
</select>
function turnOff(elem){
if(elem.value == 1)
document.getElementById('helpMessage').style.display = "none";
else
document.getElementById('helpMessage').style.display = "block";
}
答案 2 :(得分:0)
onchange而不是onChange 它区分大小写,所以资本“C”不起作用。