javascript表单验证:
1.长度限制
function test()
{
if(document.a.b.value.length>50)
{
alert("不能超过50个字符!");
document.a.b.focus();
return false;
}
}
2.验证油箱格式
function isEmail(strEmail) {
if (strEmail.search(/^\w+((-\w+)|(\.\w+))*\@[A-Za-z0-9]+((\.|-)[A-Za-z0-9]+)*\.[A-Za-z0-9]+$/) != -1)
return true;
else
alert("oh");
}
3.两次输入密码是否相同
function check()
{
with(document.all){
if(input1.value!=input2.value)
{
alert("false")
input1.value = "";
input2.value = "";
}
else document.forms[0].submit();
}
}
4.表单项不能为空
function CheckForm()
{
if (document.form.name.value.length == 0) {
alert("请输入您姓名!");
document.form.name.focus();
return false;
}
return true;
}
5.比较两个表单项的值是否相同
function CheckForm()
if (document.form.PWD.value != document.form.PWD_Again.value) {
alert("您两次输入的密码不一样!请重新输入.");
document.ADDUser.PWD.focus();
return false;
}
return true;
}
6.E-mail值检测
function isMail(name)
{
if(! isEnglish(name))
return false;
i = name.indexOf(" at ");
j = name dot lastIndexOf(" at ");
if(i == -1)
return false;
if(i != j)
return false;
if(i == name dot length)
return false;
return true;
}
一 :字符
x 字符 x。举例:'a'表示字符a
\\ 反斜线字符。
\n 新行(换行)符 ('\u000A')
\r 回车符 ('\u000D')
二:字符类
[abc] a、b 或 c(简单类)
[^abc] 任何字符,除了 a、b 或 c(否定)
[a-zA-Z] a到 z 或 A到 Z,两头的字母包括在内(范围)
[0-9] 0到9的字符都包括
三:预定义字符类
. 任何字符。我的就是.字符本身,怎么表示呢? \.
\d 数字:[0-9]
\D 非数字:[^\d]/[^0-9]
\w 单词字符:[a-zA-Z_0-9]
\W 非字符[^\w]
四:变边界匹配器
^ 行的开头
$ 行的结尾
\b 单词边界, 就是不是单词字符的地方。
五:Greedy
X? X,一次或一次也没有
X* X,零次或多次
X+ X,一次或多次
X{n} X,恰好 n 次
X{n,} X,至少 n 次
X{n,m} X,至少 n 次,但是不超过 m 次
常用正则表达式:
1. "^[\w-]+(\.[\w-]+)*@[\w-]+(\.[\w-]+)+$"
\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)* //email地址
2. "^[a-zA-z]+://(\w+(-\w+)*)(\.(\w+(-\w+)*))*(\?\S*)?$"
^[a-zA-z]+://(\\w+(-\\w+)*)(\\.(\\w+(-\\w+)*))*(\\?\\S*)?$ //url
3. /^(d{2}|d{4})-((0([1-9]{1}))|(1[1|2]))-(([0-2]([1-9]{1}))|(3[0|1]))$/ // 年-月-日
4. /^((\+?[0-9]{2,4}\-[0-9]{3,4}\-)|([0-9]{3,4}\-))?([0-9]{7,8})(\-[0-9]+)?$/ //电话号码
5. /.*|/ //匹配HTML标记的正则表达式
6. (\d{3}-|\d{4}-)?(\d{8}|\d{7})? //国内电话号码
7. ^[1-9]*[1-9][0-9]*$ //腾讯QQ号
8. /.*1>|/ //HTML标记
这里只是我觉得重要的一些例子,更多的知识还需要我们自己更深入的学习,多看看别人写的博客,关注一些技术方面的变化