【发布时间】:2016-12-20 15:48:00
【问题描述】:
所以我有一个表格,要求提供用户的个人信息。在表格的最后,我设置了一个弹出模式,上面写着“感谢您注册我们等”。但是,即使您将所有字段留空并单击表单末尾的按钮,模式仍然会弹出“感谢您注册我们...”。
如何将模态框设置为仅在所有字段完成后才出现?
注意:单击表单末尾的按钮后,我需要将个人信息保留在页面上。我将类型从提交更改为按钮,但是当我填写最后一个问题并单击按钮时,所有输入都消失了。
任何帮助将不胜感激!
这是表格:
<form id="personalinfo" name="personalinfo" onsubmit="ask()">
<b>Please sign up with us before you proceed:</b><br>
First Name: <input name="firstname" required="" size="40" type="text"><br>
<br>
Last Name: <input name="lastname" required="" size="40" type="text"><br>
<br>
Age: <select name="dropdown">
<option value="1">10-18</option>
<option value="2">19-25</option>
<option value="3">26-35</option>
<option value="4">36-45</option>
<option value="5">46-55</option>
<option value="6">56-65</option>
<option value="6">65+</option>
</select><br>
<br>
Gender: <input name="gender" required="" type="radio" value="male"> Male<br>
<input name="gender" required="" type="radio" value="female"> Female<br>
<input name="gender" required="" type="radio" value="other"> Other<br>
<br>
<br>
<button id="OK!">OK!</button>
</form>
<div id="myModal" class="modal" type="button">
<div class="modal-content">
<span class="close">×</span>
<p>Thank you for signing up with us ! You can now proceed to the test.</p>
</div>
</div>
<script>
var modal = document.getElementById('myModal');
var btn = document.getElementById("OK!");
var span = document.getElementsByClassName("close")[0];
btn.onclick = function()
{
modal.style.display = "block";
}
span.onclick = function()
{
modal.style.display = "none";
}
window.onclick = function(event)
{
if (event.target == modal)
{
modal.style.display = "none";
}
}
</script>
</form>
【问题讨论】:
标签: javascript forms modal-dialog radio-button requirements