Javascript 如果所有表单字段都不是空的,如何使按钮转到下一页
我有一个提交表单的按钮,但我也希望它链接到另一个页面。我只希望它链接到下一页,如果表单中的所有字段都已填写(所有字段都是必需的)。我认为这将涉及JavaScript,这很好,但我希望避免使用jQuery。谢谢。通常的做法是将普通表单提交与相结合(服务器接受表单提交,然后重定向页面) 使用普通表单提交,您只需将字段标记为Javascript 如果所有表单字段都不是空的,如何使按钮转到下一页,javascript,html,forms,button,required,Javascript,Html,Forms,Button,Required,我有一个提交表单的按钮,但我也希望它链接到另一个页面。我只希望它链接到下一页,如果表单中的所有字段都已填写(所有字段都是必需的)。我认为这将涉及JavaScript,这很好,但我希望避免使用jQuery。谢谢。通常的做法是将普通表单提交与相结合(服务器接受表单提交,然后重定向页面) 使用普通表单提交,您只需将字段标记为必需,如下所示: <form method="post" action="/what/ever"> <label>Name: <input req
必需
,如下所示:
<form method="post" action="/what/ever">
<label>Name: <input required></label>
<label>Email: <input type="email" required></label>
<input type="submit" value="Send">
</form>
姓名:
电邮:
表单提交成功后,将页面从服务器端重定向到下一页(或错误页面,以防出错)。通过使用HTML5
必填字段,可以在客户端轻松完成表单验证
<input type="text" required />
然而,并非所有浏览器都支持HTML5,对于这些浏览器,您可以使用基于JavaScript的解决方案。这可以通过无数种方式实现。例如,在submit按钮上添加一个事件侦听器,验证所有字段是否为非空,否则将阻止提交
var form = document.forms["form-name"];
var formFields = form.getElementsByTagName("input");
form.addEventListener("submit", function (event) {
var validationOk = true;
for (var i = 0; i < formFields.length; i++) {
if (formFields[i].value == "") {
validationOk = false;
// Here you probably also want to give the user some kind
// of feedback by adding a class to the field or similar
}
}
if (!validationOk) {
event.preventDefault();
}
});
var form=document.forms[“form name”];
var formFields=form.getElementsByTagName(“输入”);
表单。addEventListener(“提交”,函数(事件){
var validationOk=真;
对于(变量i=0;i
但是,请注意,从安全角度来看,您不应该信任客户端验证,而应该信任服务器端验证,只要验证不仅仅是为了改善用户体验