jQuery基于正则表达式的表单验证功能示例

作者:袖梨 2022-06-25
代码如下 复制代码

"http://www.***w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

Test

functionvalidata(){

if($("#username").val()==""){

alert("请输入名字");

returnfalse;

}

if($("#password").val()==""){

alert("请输入密码");

returnfalse;

}

if($("#telephone").val()==""){

alert("请输入电话号码");

}

if($("#email").val()==""){

$("#email").val("[email protected]");

}

}

functionisInteger(obj){

reg=/^[-+]?d+$/;

if(!reg.test(obj)){

$("#test").html("Please input correct figures");

}else{

$("#test").html("");

}

}

functionisEmail(obj){

reg=/^w{3,}@w+(.w+)+$/;

if(!reg.test(obj)){

$("#test").html("请输入正确的邮箱地址");

}else{

$("#test").html("");

}

}

functionisString(obj){

reg=/^[a-z,A-Z]+$/;

if(!reg.test(obj)){

$("#test").html("只能输入字符");

}else{

$("#test").html("");

}

}

functionisTelephone(obj){

reg=/^(d{3,4}-)?[1-9]d{6,7}$/;

if(!reg.test(obj)){

$("#test").html("请输入正确的电话号码!");

}else{

$("#test").html("");

}

}

functionisMobile(obj){

reg=/^(+d{2,3}-)?d{11}$/;

if(!reg.test(obj)){

$("#test").html("请输入正确移动电话");

}else{

$("#test").html("");

}

}

functionisUri(obj){

reg=/^http://[a-zA-Z0-9]+.[a-zA-Z0-9]+[/=?%-&_~`@[]':+!]*([^""])*$/;

if(!reg.test(obj)){

$("#test").html($("#uri").val()+"请输入正确的inernet地址");

}else{

$("#test").html("");

}

}

//document加载完毕执行

$(document).ready(function() {

// do something here

//隔行换色功能

$("p").each(function(i){

this.style.color=['red','green','blue','black'][i%2]

});

//eq(2)获取$("p")集合的第3个元素

$("p").eq(2).click(function(){$("#display").css("color","blue")});

//所有test中的p都附加了样式"over"。

$("#test>p").addClass("over");

//test中的最后一个p附加了样式"out"。

$("#test p:last").addClass("out");

//选择同级元素还没看懂

//$('#faq').find('dd').hide().end().find('dt').click(function()

//选择父级元素

$("a").hover(

function(){$(this).parents("p").addClass("out")},

function(){$(this).parents("p").removeClass("out")})

//hover鼠标悬停效果,toggle每次点击时切换要调用的函数 ,

//trigger(eventtype): 在每一个匹配的元素上触发某类事件,

//bind(eventtype,fn),unbind(eventtype): 事件的绑定与反绑定从每一个匹配的元素中(添加)删除绑定的事件。

//方法的连写

$("#display").hover(function(){

$(this).addClass("over");

},function(){

$(this).removeClass("over");

})

.click(function(){alert($("#display").text())});

if($.browser.msie){//判断浏览器,若是ie则执行下面的功能

//聚焦

$("input[@type=text],textarea,input[@type=password]")

.focus(function(){$(this).css({background:"white",border:"1px solid blue"})})

//也可以这样连着写,

//.blur(function(){$(this).css({background:"white",border:"1px solid black"})})

//失去焦点

//css样式可以通过addClass()来添加

$("input[@type=text],textarea,input[@type=password]")

.blur(function(){$(this).css({background:"white",border:"1px solid black"});});

}

});

.over{

font-size:large;

font-style:italic;

}

.out{

font-size:small;

}

demo

adfasdfasdf

adfadfasfasdfasdf

adfadfasfasdfasdf

adfadfasfasdfasdf

isString

isInteger

isTelephone

isMobile

isEmail

isUri

附:常用的js验证函数:

网站首页表单js:

代码如下 复制代码

functioncheckVaild()

{

varUser=$("#Mobile").val();

varreg=/^(+d{2,3}-)?d{11}$/;

if(User=="")

{

alert("手机号码不能为空") ;

returnfalse;

}

if(!reg.test(User)){

alert("手机号输入错误") ;

returnfalse;

}

returntrue;

}

正则表达式特殊字符的过滤:

代码如下 复制代码

functiondoValidate(value)

{

vkeyWords=/^[^`~!@#$%^&*()+=|\][]{}:;',./?]{1}[^`~!@$%^&()+=|\][]{}:;',.?]{0,19}$/;

if(value==null|| value=="")

{

alert("请输入正确的查询参数");

returnfalse;

}

if(!vkeyWords.test(value))

{

alert("您输入的查询参数不正确,请重新输入!");

returnfalse;

}

returntrue;

}

相关文章

精彩推荐