使用javascript验证注册表单的自定义域?
我正在尝试验证注册表单中我的公司电子邮件id…以便表单只接受我的公司邮件id…那么现在验证后出现了什么问题(即,当我们单击“提交”按钮时,我们会收到一条警告消息)表单正在刷新,输入的值将被清除…因此任何帮助或建议都不会刷新??提前感谢 我的Javascript方法是:使用javascript验证注册表单的自定义域?,javascript,jquery,forms,validation,Javascript,Jquery,Forms,Validation,我正在尝试验证注册表单中我的公司电子邮件id…以便表单只接受我的公司邮件id…那么现在验证后出现了什么问题(即,当我们单击“提交”按钮时,我们会收到一条警告消息)表单正在刷新,输入的值将被清除…因此任何帮助或建议都不会刷新??提前感谢 我的Javascript方法是: function submitAlbum() { var frm = document.getElementById("frmRegistration"); //validateEmail(document
function submitAlbum() {
var frm = document.getElementById("frmRegistration");
//validateEmail(document.getElementById('email').value);
var email = document.getElementById('email').value;
var re = /^\s*[\w\-\+_]+(\.[\w\-\+_]+)*\@[\w\-\+_]+\.[\w\-\+_]+(\.[\w\-\+_]+)*\s*$/;
if (re.test(email)) {
if (email.indexOf('@bdisys.com', email.length - '@bdisys.com'.length) !== -1) {
// alert('Submission was successful.');
var r = confirm("Are You Sure You Want to add your details.");
if (r == true) {
frm.action = "signUpServlet?formidentity=doRegistration&checkboxStatus=" + checkboxStatus;
frm.submit();
}
}
else {
document.getElementById('email').focus();
alert('Email must be a Company e-mail address (your.name@bdisys.com).');
return false;
}
}
else {
document.getElementById('email').focus();
alert('Not a valid e-mail address.');
return false;
}
}
您应该将验证方法绑定到表单的提交事件。 在验证方法内部,如果字段无效,则停止事件传播,如果可以,则让它冒泡
var frm = document.getElementById("frmRegistration");
frm.addEventListener('submit', validate, false);
var re = /^\s*[\w\-\+_]+(\.[\w\-\+_]+)*\@[\w\-\+_]+\.[\w\-\+_]+(\.[\w\-\+_]+)*\s*$/;
function validate(event) {
// validateEmail
var email = document.getElementById('email').value;
var confirmed = false;
if (re.test(email)) {
confirmed = true;
if (email.indexOf('@bdisys.com', email.length - '@bdisys.com'.length) !== -1) {
confirmed = confirm("Are You Sure You Want to add your details.");
}
} else {
document.getElementById('email').focus();
alert('Email must be a Company e-mail address (your.name@bdisys.com).');
}
if (!confirmed) {
event.preventDefault();
event.stopPropagation();
return false;
}
}
我建议您使用jQuery使代码更简单,更便于移植。我认为这可以完成这项工作
<input type = "email" pattern ="^[a-z0-9._%+-]+@bdisys.com">
检查这个箱子
尝试使用
localStorage
进行此操作。我已编辑了我的答案。请检查Hi fuegy…如果可能,您可以进行所需的更改吗!!因为我在javascript中是新的@SalmanAmaan这个答案有问题吗?为什么它没有被投票或者被接受?我已经接受了,但是你重新编辑了答案,这就是问题所在!!非常感谢!!