2016-09-18 73 views
0

我想做一個簡單的下拉菜單,它將有兩個元素:「男性」和「女性」。我正在使用一個按鈕讓這些元素變得可見。問題在於它們變得可見,但僅在幾分之一秒內回到隱藏狀態。用javascript改變DOM不起作用

這裏是我的代碼:

<html> 
<head> 

<title> 
    Validation Form 
</title> 
</head> 

<body> 
<h1> 
    Validation Form 
</h1> 
<form id="contactForm" action="" > 
    <fieldset> 
    <legend>Validation</legend> 
    <p> 
    <label for="firstname">First Name</label> 
    <input id="firstname" name="firstname" type="text"/> 

</p> 
<p> 
    <label for="lastname">Last Name</label> 
    <input id="lastname" name="lastname" type="text" /> 

</p> 
<p> 
    <label for="gender">Gender</label> 
    <input id="gender" name="gender" type="text" /> 

</p> 
<div class="dropdown"> 
    <button id="btn_drop" onclick="myFunction()" class="dropbtn">Dropdown</button> 
    <div id="myDropdown" style="display: none"> 
     <p id="drop_male">Male</p> 
     <p id="drop_female">Female</p> 
    </div> 
</div> 
<p> 
    <label for="website">Website</label> 
    <input id="website" name="website" type="text" /> 

</p> 
<p> 
    <input type="button" id="submit" name="submit" value="Submit" /> 
    <input type="reset" value="clear" /> 
</p> 
</fieldset> 
</form> 

<script> 
    var dropBtn = document.getElementById("btn_drop"); 
    dropBtn.onclick = function() { 
    // show all elements on clicking submit! 
    var drop = document.getElementById("myDropdown"); 
    drop.style.display = 'block'; 

    } 

</script> 
</body> 
</html> 

回答

0

可以讓這個無javascript live fiddle with css

<p> 
    <label for="gender">Gender</label> 
    <select id="gender" name="gender" type='select' > 
     <option value="">Select Gender</option> 
     <option value="male">Male</option> 
     <option value="female">Female</option> 
     </select> 
    </p>