注册 登录  
 加关注
   显示下一条  |  关闭
温馨提示!由于新浪微博认证机制调整,您的新浪微博帐号绑定已过期,请重新绑定!立即重新绑定新浪微博》  |  关闭

左岸

web前端

 
 
 

日志

 
 

Javascript表单处理之邮箱验证、判断密码一致、限制输入规定的字符串  

2013-10-08 14:43:11|  分类: js |  标签: |举报 |字号 订阅

  下载LOFTER 我的照片书  |

今天收集了一些Javascript表单处理相关的代码,包括邮箱验证、判断两次输入的密码是否一致、判断用户名是否合法以及限制输入规定的字符串等,具体如下:

1、在表单中限制字符串长度

html代码

<form name="theForm" onsubmit="return test()"
    <textarea name="theTxt" cols="40" rows="6" wrap="virtual"></textarea
    <input type="submit" value="Check"
</form>

js代码

<script type="text/javascript"
    function test(){ 
        if(document.theForm.theTxt.value.length>20){ 
            alert("不能超过20个字符!"); 
            document.theForm.theTxt.focus(); 
            return false
        }
    }
</script>

2、表单中只能输入规定的字符串

只允许输入中文
<input onkeyup="value=value.replace(/[ -~]/g,##)"/>
允许输入中文
<input onkeyup="value=value.replace(/[u4E00-u9FA5]/g,##)"/>
只允许输入数字
<input onkeyup="value=value.replace(/D/g,##)"/>
只允许输入英文、数字和下划线
<input name="username" type="text" onkeyup="value=value.replace(/[^w./]/ig,##)"/>
//"#"代表单引号

下面是相关的正则,可以根据需要使用:

只能输入数字:"^[0-9]*$"。

只能输入n位的数字:"^d{n}$"。

只能输入至少n位的数字:"^d{n,}$"。

只能输入m~n位的数字:。"^d{m,n}$"

只能输入零和非零开头的数字:"^(0|[1-9][0-9]*)$"。

只能输入有两位小数的正实数:"^[0-9]+(.[0-9]{2})?$"。

只能输入有1~3位小数的正实数:"^[0-9]+(.[0-9]{1,3})?$"。

只能输入非零的正整数:"^+?[1-9][0-9]*$"。

只能输入非零的负整数:"^-[1-9][]0-9"*$。

只能输入长度为3的字符:"^.{3}$"。

只能输入由26个英文字母组成的字符串:"^[A-Za-z]+$"。

只能输入由26个大写英文字母组成的字符串:"^[A-Z]+$"。

只能输入由26个小写英文字母组成的字符串:"^[a-z]+$"。

只能输入由数字和26个英文字母组成的字符串:"^[A-Za-z0-9]+$"。

只能输入由数字、26个英文字母或者下划线组成的字符串:"^w+$"。

验证用户密码:"^[a-zA-Z]w{5,17}$"正确格式为:以字母开头,长度在6~18之间,只能包含字符、数字和下划线。

验证是否含有^%&',;=?$"等字符:"[^%&',;=?$x22]+"。

只能输入汉字:"^[u4e00-u9fa5]{0,}$"

3、邮箱验证

html代码

<form>
    <input type="text" id="email"/> 
    <input type="submit" id="check" value="Check"/> 
</form>

js代码

<script type="text/javascript">
    window.onload = function(){
        var btn = document.getElementById("check");
        var email = document.getElementById("email");
        function isEmail(strEmail) { 
            var re_email = new RegExp("^([a-zA-Z0-9]+[_|\_|.]?)*[a-zA-Z0-9]+@([a-zA-Z0-9]+[_|\_|.]?)*[a-zA-Z0-9]+.[a-zA-Z]{2,3}$");
            if(re_email.test(strEmail)) 
                alert("邮箱合法!");
            else
                alert("邮箱不合法!");
        }
        btn.onclick = function(){
            isEmail(email.value);
        }
    }
</script>

4、判断两次密码是否一致

html代码

<form name="theForm">
    <input type="password" name="password"/> 
    <input type="password" name="re_password"/> 
    <input type="button" id="check" value="Check"/> 
</form>

js代码

<script type="text/javascript">
    window.onload = function(){
        var password1 = document.theForm.password;
        var password2 = document.theForm.re_password;
        var check = document.getElementById("check");
        function isPass(pwd1,pwd2) { 
            if(pwd1 != pwd2){
                alert("两次密码不一致!");
            }
            else
                alert("两次密码一致!");
        }
        check.onclick = function(){
            isPass(password1.value,password2.value);
        }
    }
</script>

好了,代码贴完了。

  评论这张
 
阅读(27)| 评论(0)
推荐 转载

历史上的今天

在LOFTER的更多文章

评论

<#--最新日志,群博日志--> <#--推荐日志--> <#--引用记录--> <#--博主推荐--> <#--随机阅读--> <#--首页推荐--> <#--历史上的今天--> <#--被推荐日志--> <#--上一篇,下一篇--> <#-- 热度 --> <#-- 网易新闻广告 --> <#--右边模块结构--> <#--评论模块结构--> <#--引用模块结构--> <#--博主发起的投票-->
 
 
 
 
 
 
 
 
 
 
 
 
 
 

页脚

网易公司版权所有 ©1997-2017