Javascript 使用html填写表单时使按钮可单击
我用html制作了一个表单,希望用户在填写某些字段时能够按submit。因此,我的按钮在开始时被禁用,但由于某些原因,当物品被填满时,我的按钮无法单击。Javascript 使用html填写表单时使按钮可单击,javascript,html,button,Javascript,Html,Button,我用html制作了一个表单,希望用户在填写某些字段时能够按submit。因此,我的按钮在开始时被禁用,但由于某些原因,当物品被填满时,我的按钮无法单击。 这是我的html中的表单: <fieldset> <legend>U gegevens</legend> <form name="signup" action="index.html" method="post"> <ul>
这是我的html中的表单:
<fieldset>
<legend>U gegevens</legend>
<form name="signup" action="index.html" method="post">
<ul>
<li> <label>Naam</label>
<input type="text" name="name" size="30" />
</li>
<li> <label>Voornaam</label>
<input type="text" name="voornaam" size="30" />
</li>
<li> <label>Adress</label>
<input type="text" name="adress" size="30" />
</li>
<li> <label>Gemeente</label>
<input type="text" name="gemeente" size="30" />
</li>
<li> <label>Postcode</label>
<input type="text" name="postcode" size="30" />
</li>
<li>
<p>Ik wens een alternatief facturatieadres <input type="checkbox" id="be1"onclick="if(this.checked){displayFac()}"></p>
</li>
<li style="display:none;" id="fac1"> <label >Adress</label>
<input type="text" size="30" />
</li>
<li style="display:none;" id="fac2"> <label >Gemeente</label>
<input type="text" size="30" />
</li>
<li style="display:none;" id="fac3"> <label>Postcode</label>
<input type="text" size="30" />
</li>
<li>
<p>Ik wens een alternatief leveringsadress <input type="checkbox" id="be2" onclick="if(this.checked){displayLe()}"></p>
</li>
<li style="display:none;" id="le1"> <label >Adress</label>
<input type="text" size="30" />
</li>
<li style="display:none;" id="le2"> <label>Gemeente</label>
<input type="text" size="30" />
</li>
<li style="display:none;" id="le3" > <label>Postcode</label>
<input type="text" size="30" />
</li>
<li><label for="submit"></label>
<button type="submit" id="submit" disabled>Verzenden</button>
</li>
</ul>
</form>
</fieldset>
提前谢谢 从validateForms()函数中删除while循环,并在每个输入事件上调用它,如果选中复选框,也可以调用它。希望这有帮助。试试这个:
function validateForm()
{
var a=document.forms["signup"]["name"].value;
var b=document.forms["signup"]["voornaam"].value;
var c=document.forms["signup"]["adress"].value;
var d=document.forms["signup"]["gemeente"].value;
var e=document.forms["signup"]["postcode"].value;
if ( a!="" && b!="" && c!= "" && d!="" && e!="")
{
document.getElementById("submit").disabled=false;
}
}
你的功能将永远冻结浏览器。你从来没有真正调用过你的函数,所以你没有注意到这个问题。你如何调用启用按钮的函数<代码>验证表单()。。。SLaks是对的<代码>while(true)将始终为true,从而创建一个无限循环。
function validateForm()
{
var a=document.forms["signup"]["name"].value;
var b=document.forms["signup"]["voornaam"].value;
var c=document.forms["signup"]["adress"].value;
var d=document.forms["signup"]["gemeente"].value;
var e=document.forms["signup"]["postcode"].value;
if ( a!="" && b!="" && c!= "" && d!="" && e!="")
{
document.getElementById("submit").disabled=false;
}
}