使用jquery对多个表单进行通用电子邮件验证
Common Email validation for more than one forms using jquery
我有一个表单
<form id="Register" method="post" onsubmit="return validateForm()">
<p><label>Your Email</label><input type="text" name="email"/></p>
<p style="margin-left:27%;"><input type="submit" name="submit" value="Submit" /></p>
</form>
我使用javascript验证这个表单是
function validateForm() {
var x = document.forms["Register"]["email"].value;
var atpos = x.indexOf("@");
var dotpos = x.lastIndexOf(".");
if (atpos < 1 || dotpos < atpos + 2 || dotpos + 2 >= x.length) {
alert("Not a valid e-mail address");
return false;
}
}
我有两张或两张以上的表格
<form id="Login" method="post" >
<p><label>Email</label><input type="text" name="Log_email" /></p>
<p style="margin-left:27%;"><input type="submit" name="submit" value="Login" /></p>
</form>
<form id="forgot" method="post">
<p><label>Your Email</label><input type="text" name="email"/></p>
<p style="margin-left:27%;"><input type="submit" name="submit" value="Submit" /></p>
</form>
如何为所有这些表单重写javascript验证。
如果在所有表单中使用相同的电子邮件名称,则从所有表单中调用带有"this.id"参数的validate函数
onsubmit="return validateForm(this.id)"
并修改代码:
function validateForm(id) {
var x = document.forms[id]["email"].value;
var atpos = x.indexOf("@");
var dotpos = x.lastIndexOf(".");
if (atpos < 1 || dotpos < atpos + 2 || dotpos + 2 >= x.length) {
alert("Not a valid e-mail address");
return false;
}
}
JSFIDDLE:http://jsfiddle.net/g2frB/1/
JS代码:
$(".emlfrm").on("submit",function()
{
var x = $(this).find(".eml").eq(0).val();
var atpos = x.indexOf("@");
var dotpos = x.lastIndexOf(".");
if (atpos < 1 || dotpos < atpos + 2 || dotpos + 2 >= x.length) {
alert("Not a valid e-mail address");
return false;
}
});
HTML代码:
<form class="emlfrm" id="Login" method="post" >
<p><label>Email</label><input type="text" class="eml" name="Log_email" /></p>
<p style="margin-left:27%;"><input type="submit" name="submit" value="Login" /></p>
</form>
<form class="emlfrm" id="forgot" method="post">
<p><label>Your Email</label><input type="text" class = "eml"name="email"/></p>
<p style="margin-left:27%;"><input type="submit" name="submit" value="Submit" /></p>
</form>
在您的电子邮件字段中添加一个类,并验证此项
相关文章:
- 页面上的2个表单带有JS验证-其中一个抛出电子邮件验证错误
- 为什么浏览器为电子邮件验证正则表达式显示不同的反斜杠.如何防止这种情况发生
- 如何设置30天的电子邮件验证以由用户重新发送
- Javascript电子邮件验证不起作用
- 将电子邮件验证正则表达式字符串存储在JSON中
- Javascript中的电子邮件验证检查
- 特定域的电子邮件验证
- xxxx@my.csun.edu 正则表达式的自定义电子邮件验证
- 电子邮件验证不接受仅包含两个字符的域
- JavaScript 中的字母数字电子邮件验证
- javascript和正则表达式以及用于电子邮件验证的filter_var之间的区别
- Node.js mongodb电子邮件验证
- jQuery中的电子邮件验证
- 带有电子邮件验证的表单的基本代码
- 如何在webview android中强制打开电子邮件验证
- 主机名开头的点和主机名中间的2个点的电子邮件验证
- 禁止的正则表达式._或.-(电子邮件验证/javascript)
- javascript中用于电子邮件验证的Regex
- JavaScript电子邮件验证而不提交
- 电子邮件验证功能运行不正常