Javascript显示消息并隐藏消息onclick on select tage

时间:2015-07-27 14:57:18

标签: javascript html css

我有一个选择框

<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无法正常工作

3 个答案:

答案 0 :(得分:1)

您的代码确实有效。这是因为您同时附加了点击和更改处理程序,它会同时触发。您的onchange事件使显示为空,但同时也会触发点击事件,这就是您能够看到文本的原因。

编辑:

&#13;
&#13;
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;
&#13;
&#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”不起作用。