Dojo学习6 功能强大的文本框:dijit.form.ValidationTextbox

6. 功能强大的文本框: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>
javascript

<body class="tundra">
<form name="form1">
 <input type="text" id="vt" dojoType="dijit.form.ValidationTextbox"   
  promptMessage="请输入信息"
  invalidMessage="输入的信息有误"
  required="true"
  trim="true"
  propercase="true"
 >
css

一些属性:
required="true"  //必须填写
trim="true"   //将先后的空格自动删除<
propercase="true"  //单词首字母大写
uppercase="true"  //大写字母形式
lowercase="true"  //小写字母形式
html

验证文本组件能够支持正则表达式验证,好比:
不包含空格验证:
<input id="vt1" type="text" name="phone"  value="someTestString"
   dojoType="dijit.form.ValidationTextbox"
   regExp="[\w]+"
   required="true"
   trim="true"
   invalidMessage="输入中不容许包含空格">
java

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地址">
正则表达式

只容许输入数字:   
<input id="vt1" type="text" name="phone"  value="/123.34"
   dojoType="dijit.form.NumberTextbox"   
   required="true"
   trim="true"
   invalidMessage="只容许输入数字">
   
</form>
</body>
</html>
网站

ValidationTextbox的一些经常使用方法:
setValue();   //不要使用.value或者.innerHTML来设置值,你可能设置不成功或者失去校验
getValue();
validate();  //手工校验
isEmpty();  //是否为空
isValid();  //是否符合校验规则
ui

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

相关文章
相关标签/搜索