Javascript 当表单验证为false时,请保持在当前页面
如果“Name”输入字段为空,我想停留在当前页面上。 现在,它会显示错误消息,当您单击ok时,它仍然会转到下一页(contactcaptcha.php)Javascript 当表单验证为false时,请保持在当前页面,javascript,forms,Javascript,Forms,如果“Name”输入字段为空,我想停留在当前页面上。 现在,它会显示错误消息,当您单击ok时,它仍然会转到下一页(contactcaptcha.php) 函数notEmpty(elem,helperMsg){ if(elem.value.length==0){ 警报(helperMsg); 元素焦点(); 返回false; } 返回true; } 尝试这样做,在表单元素的提交事件中返回您的函数 <form id="action" action="contactcaptcha.php" m
函数notEmpty(elem,helperMsg){
if(elem.value.length==0){
警报(helperMsg);
元素焦点();
返回false;
}
返回true;
}
尝试这样做,在
表单
元素的提交
事件中返回您的函数
<form id="action" action="contactcaptcha.php" method="post"
onsubmit="return notEmpty(document.getElementById('Name'), 'Please enter your name')">
<fieldset>
...
<input type="submit" name="submit" value="Send your message">
</fieldset>
</form>
...
误读返回
关键字:
<input type="submit"
onclick="return notEmpty(document.getElementById('Name'), 'Please enter your name')"
name="submit" value="Send your message">
无论如何,当您使用HTML5时,您可能需要使用:
只是要指出,当按钮被点击时,这将起作用,而不是在表单提交时。。。因此,如果用户在焦点位于最后一个字段时按“回车”,他将提交表单,而无需单击“提交”按钮。:)是的,但这是无用的,因为它在旧浏览器中不起作用。事实上,我想删除出现在我的电子邮件输入领域。我知道还没定下来。但是它神奇地出现了。我明白你的意思,但是它是一个有效的选项,或者说是对你的有效扩展,因为你的JavaScript解决方案对于关闭JavaScript的人不起作用。注意:对于关闭JavaScript和没有HTML5浏览器的人,两者都不起作用。因此,无论如何,您都需要服务器端验证。关于您的问题,也许这有帮助:或者您可以使用“nonvalidate='nonvalidate'”关闭表单验证,因为至少我可以将其保留为空,但如果我输入了某个内容,它必须是有效的邮件地址。
<input type="submit"
onclick="return notEmpty(document.getElementById('Name'), 'Please enter your name')"
name="submit" value="Send your message">
<form>
<input id="message" required>
<input type="submit" value="Submit">
</form>