dojo之ValidationTextbox

来源:互联网 发布:刘路造假事件知乎 编辑:程序博客网 时间:2024/05/22 09:18
功能强大的文本框:dijit.form.ValidationTextbox
这个文本输入框的功能比较强大,关键是它能够提供一些常用的验证和大小写转换。下面介绍一个例子和一些常用的属性:
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<title>validationTextbox</title>
<style type="text/css">
       @import "../js/dojo/resources/dojo.css";
       @import "../js/dijit/themes/tundra/tundra.css";
       .dijitInputFieldFocused{
              border:solid 2px #FFDF00;                 
       }
</style>         
 
<script type="text/javascript"
       djConfig="parseOnLoad: true, isDebug: true"
       src="../js/dojo/dojo.js"></script>
       <script>
              dojo.require("dijit.form.ValidationTextbox");
              dojo.require("dijit.form.NumberTextbox");
             
       </script>
</head>
 
<body class="tundra">
<form name="form1">
       <input type="text" id="vt" dojoType="dijit.form.ValidationTextbox"          
              promptMessage="请输入信息"
              invalidMessage="输入的信息有误"
              required="true"
              trim="true"
              propercase="true"
       ><br />
 
一些属性:<br />
required="true"              //必须填写<br />
trim="true"                   //将前后的空格自动删除<br />
propercase="true"   //单词首字母大写<br />
uppercase="true"    //大写字母形式<br />
lowercase="true"    //小写字母形式<br />
<hr />
验证文本组件可以支持正则表达式验证,比如:<br />
不包含空格验证:<input id="vt1" type="text" name="phone" value="someTestString"
                     dojoType="dijit.form.ValidationTextbox"
                     regExp="[/w]+"
                     required="true"
                     trim="true"
                     invalidMessage="输入中不允许包含空格"><br />
 
email地址验证:<input id="vt2" type="text" name="phone" value="/amushen2005@hotmail.com"
                     dojoType="dijit.form.ValidationTextbox"
                     regExp="(/w+@/w+/./w+)(/.{0,1}/w*)(/.{0,1}/w*)"
                     required="true"
                     trim="true"
                     invalidMessage="输入合法的email地址"><br />
只允许输入数字:                    
<input id="vt1" type="text" name="phone" value="/123.34"
                     dojoType="dijit.form.NumberTextbox"               
                     required="true"
                     trim="true"
                     invalidMessage="只允许输入数字"><br />
                    
</form>
</body>
</html>
 
ValidationTextbox的一些常用方法:
setValue(); //不要使用.value或者.innerHTML来设置值,你可能设置不成功或者失去校验
getValue();
validate(); 手工校验
isEmpty(); 是否为空
isValid(); 是否符合校验规则

关于校验的正则表达式法比较灵活,功能也非常强大,可以到微软或者sun的官方网站查看一些权威的资料。或者直接上网上搜索一些常用的正则表达式。
下面给出一些常用正则表达式:
1、   非负整数:”^d+$”
2、   正整数:”^[0-9]*[1-9][0-9]*$”
3、   非正整数:”^((-d+)|(0+))$”
4、   负整数:”^-[0-9]*[1-9][0-9]*$”
5、   整数:”^-?d+$”
6、   非负浮点数:”^d+(.d+)?$”
7、   正浮点数:”^((0-9)+.[0-9]*[1-9][0-9]*)|([0-9]*[1-9][0-9]*.[0-9]+)|([0-9]*[1-9][0-9]*))$”
8、   非正浮点数:”^((-d+.d+)?)|(0+(.0+)?))$”
9、   负浮点数:”^(-((正浮点数正则式)))$”
10、英文字符串:”^[A-Za-z]+$”
11、英文大写串:”^[A-Z]+$”
12、英文小写串:”^[a-z]+$”
13、英文字符数字串:”^[A-Za-z0-9]+$”
14、英数字加下划线串:”^w+$”
15、E-mail地址:”^[w-]+(.[w-]+)*@[w-]+(.[w-]+)+$”
16、URL:”^[a-zA-Z]+://(w+(-w+)*)(.(w+(-w+)*))*(?s*)?$”
17、匹配中文字符的正则表达式: [/u4e00-/u9fa5]
18、匹配双字节字符(包括汉字在内):[^/x00-/xff]
19、匹配HTML标记的正则表达式:/<(.*)>.*<///1>|<(.*) //>/
20、匹配国内电话号码:/d{3}-/d{8}|/d{4}-/d{7}
21、匹配中国邮政编码:[1-9]/d{5}(?!/d)
22、匹配身份证:/d{15}|/d{18}


原创粉丝点击