ValidateTextBox发布--绝对实用


最新更新版本,比这个版好用多了,呵呵 :http://www.cnblogs.com/thinhunan/archive/2005/04/15/137982.html


三天过后,总算赶出了THINControls.WebControls命名空间的两名新丁:


ValidateTextBox;AutoFlexTextBox。


请认真查看以下控件说明:

 

ValidateTextBox是完全独立于官方验证控件的一组加强验证功能的TextBox,控件都提供两重控制:输入时判断输入的字符是否合法,页布提交时再次进行语法完整性、正确性验证。本组控件可完美与官方的验证控件并存,并提供TextChanged事件响应和AutoPostBack支持(.net 1.0官方验证控件是不支持TextBox回传时检测的,.net 1.1我还没有时间去做测试,不过你在使用了官方验证控件的同时,使用了本组控件,则会自动更正微软的错误。)

由于微软的验证控件在验证通过后很霸道的提交事件,所以一般的做法会造成它的验证通过直接Sumbit,而使别的验证失效,解决此问题和AutoPostBack时的问题花了我一个早上的时间,大家可以看看控件生成的代码,看看我的解决方法和思路。


 

 

 



ValidateTextBox当前版本集成以下验证和控制


TextValidType:

 

  Int,    //123/+123/-123 


  PositiveInt,   //+123/123 


  NegativeInt,   //-123 


  Float,//   111.111/+11.11/-11.11 


  PositiveFloat,//  +11.111/11.111 


  NegativeFloat,//  -111.111 


  Email,//   abc@bcd.com 


  URL,/   /http://... 


  Color,//#aabbcc 


  Chinese,//中文 


  ASCII,//半角字符 


  ZipCode,//邮编 


  Tel,//座机(只能是中国的) 


  Mobile,//手机 


  ImageFile,//图片文件URL 


  ZipFile,//ZIP文件URL,RAR 


  Date,//日期 


  Capitalize,//首字字大写 


  Uppercase,//转换成大写 


  Lowercase,//  转换成小写 


  Time,//时间 


  IPAdress//10.1.0.21

 

 

 

 

 

 

 

 

 

 



 


 

所有验证可同时提供字数控制
 


IsLimitLength开启字数控制,CountLengthMode可设一个全角字符算一个字还是两个字,MinLength最少多少字,0以上就可以当RequiredFieldValidator用了,MaxLenth最多多少字,0为无限制。

AutoPostBack开启自动回传

 


 

 



 


 

Text设置TextBox的文字。


ErrorMessage设置出错时的提示。


MessageStyle设置ErrorMessage的显示样式,如果设了ErrorMessage而没有显示,请看看这里设好没有。


TextboxStyle,TextBox的样式。


OuterStyle,设置控件外框的样式。

 

 

 

 

 

 

 

 

 

 

 



 

 

 

 

EnableClientScript设为false可以把控件变成一个普通的TextBox。



AutoFlexTextBox 只是一个简单的多行文本域,可以自动根据内容伸缩,可以设定伸编的最大限度,此控件创意来源于网上,不记得是哪位仁兄的了,特此说明。


MaxHeight最大高度。


 


 

 


下载d

 


 

请关注本Blog的计划和动向。

请提出本控件组的改进建议,特别是验证Type的扩展,非常感谢。

 

用以下方法试用一下,可快速预览功能:

if(!IsPostBack)
   {
    THINControls.WebControls.THINTextBox.ValidateTextBox valid;
    for(int i = 0 ; i < 22 ; i ++)
    {
     valid = new THINControls.WebControls.THINTextBox.ValidateTextBox();
     valid.CountLengthMode = THINControls.WebControls.THINTextBox.LengthMode.BigCharEqualTwo;
     valid.ID = "valid" + i.ToString();
     valid.MinLength = 5;
     valid.MaxLength = 20;
     valid.TextValidType = (THINControls.WebControls.THINTextBox.ValidType)i;
     valid.IsLimitLength = true;
     valid.ErrorMessage = ((THINControls.WebControls.THINTextBox.ValidType)i).ToString();
     PlaceHolder1.Controls.Add(valid);

    }
   }


楼下兄弟说会失效,你看看这个图:


 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

posted @ 2005-04-14 11:39 THIN(K) 阅读(4028) 评论(28)  编辑 收藏 网摘 所属分类: ASP.net server components and controls

  回复  引用  查看    
#1楼2005-04-14 12:20 | Rayman      
好东西,支持一下.
  回复  引用    
#2楼2005-04-14 12:53 | kk
好的
  回复  引用  查看    
#3楼2005-04-14 13:00 | dudu      
字体太大, 请调整一下, 影响了首页的显示。
  回复  引用  查看    
#4楼[楼主]2005-04-14 14:03 | 仁渣      
不是在首页会自动隐藏内容的吗?
  回复  引用  查看    
#5楼[楼主]2005-04-14 14:08 | 仁渣      
我改成8pt了,怎么还是比较大
  回复  引用  查看    
#6楼2005-04-14 14:09 | dudu      
超过指定长度才会自动隐藏。建议你使用摘要, 如何使用摘要,请看博客园FAQ: http://www.cnblogs.com/dudu/articles/52480.aspx">http://www.cnblogs.com/dudu/articles/52480.aspx
  回复  引用  查看    
#7楼2005-04-14 14:11 | dudu      
是文章中的<span style="FONT-SIZE: 14pt">引起的。
  回复  引用  查看    
#8楼2005-04-14 14:23 | ttyp      
需要说明的是,在DataType=int时,如果为空怎么没有显示错误信息?
  回复  引用  查看    
#9楼2005-04-14 14:26 | ttyp      
对于直接拖一段文字进去也没有控制,会报错
  回复  引用  查看    
#10楼[楼主]2005-04-14 14:30 | 仁渣      
# re: ValidateTextBox发布--绝对实用 删除评论
需要说明的是,在DataType=int时,如果为空怎么没有显示错误信息?
字数控制请设IsLimitLength为true;MinLength为0以上

  回复  引用  查看    
#11楼[楼主]2005-04-14 14:31 | 仁渣      
# re: ValidateTextBox发布--绝对实用 删除评论
对于直接拖一段文字进去也没有控制,会报错
这个我看看先,做得有点赶,谢谢你。

  回复  引用  查看    
#12楼[楼主]2005-04-14 14:34 | 仁渣      
哈哈,这个是微软程序员要做的事了,
要不然把拖动事件禁止了吧。

  回复  引用  查看    
#13楼2005-04-14 14:47 | ttyp      
int时本身就应该默认maxlength为0以上吧,拖动可以加上

ondragenter="return false"

  回复  引用  查看    
#14楼[楼主]2005-04-14 15:06 | 仁渣      
ondrop
Fires on the target object when the mouse button is released during a drag-and-drop operation.
-当鼠标按钮在拖曳操作过程中释放时在目标对象上触发。

ondragenter

Fires on the target element when the user drags the object to a valid drop target
当用户拖曳对象到一个合法拖曳目标时在目标元素上触发。

我认为是用ondrop

  回复  引用  查看    
#15楼[楼主]2005-04-14 18:56 | 仁渣      
拖放错误已更改;
设为密码会在设计器错误已解决。

  回复  引用    
#16楼2005-04-15 10:49 | jack
我把ValidateTextBox和一个WEB按钮拖到网页上,设为IP地址样式
运行后,发现根本不管用,而且按钮事件也丢失了

  回复  引用  查看    
#17楼[楼主]2005-04-15 13:23 | 仁渣      
我在上面放了个图,能正常使用,是你的浏览器关JS或非IE吧。
  回复  引用    
#18楼2005-04-15 14:13 | dhyeinston[未注册用户]
欢迎你成为大黄页《http://www.dahuangye.com》的代理商!!
广阔的市场空间
各行各业的企事业单位,都是【大黄页】的潜在用户,尤其目前国内几百万家正在做网上推广的企业!?
完善的代理支持体系
专业化客户服务能及时解决代理商客户的问题,确保能给客户提供高效、及时性的服务。?
独创的代理商管理平台
【大黄页】代理商管理平台不仅集成了超强的财务管理、定单管理、自定义产品、产品定价、客户甩单系统,更有 【大黄页】自行开发,并独家推出代理商员工权限管理系统。通过该管理系统,一个代理商帐户可以集成任意多个员工权限,真正做到人性化设计,让代理商各个部门和员工之间自主高效的为客户服务!
电话::021-61121126 021-61121127 021-61121128传真:021-58999109
QQ:908002 网址: http://www.dahuangye.com地址:上海市浦东新区金桥浙桥路289号建银大厦B座16层 邮编: 201206

  回复  引用    
#19楼2005-04-15 21:45 | microtea
我只想要最简单的功能,就是可以填入任何东西,但不填就不能提交.但你的控件好像没有这个功能吧?
  回复  引用  查看    
#20楼[楼主]2005-04-16 08:57 | 仁渣      
楼上说的是RequredFieldValidator,本身.net就有的,我不想重复开发。
  回复  引用    
#21楼2005-04-16 10:13 | microtea
不知为什么,有的空间不支持RequredFieldValidator,我正在为这个烦着呢.现在我只能postback回去服务器再做验证.
  回复  引用  查看    
#22楼[楼主]2005-04-16 10:43 | 仁渣      
楼上的情况估计(我现在说话要小心了,不然又有人说“肤浅没教养”了)是空间商把那个空间划来划去,导致Validators引用不到/aspnet_client/system_web/1_1_4322(1_0_3705_0)/WebUIValidation.js 
  回复  引用    
#23楼2005-04-21 00:28 | kwklover
开源吗 ?
不开源,出问题了,怎么办 ?

  回复  引用  查看    
#24楼[楼主]2005-04-21 08:46 | 仁渣      
根据计划完成所有控件发布后我会发布源代码和写一些制件控件的文章
  回复  引用  查看    
#25楼2005-04-23 22:56 | 火星      
public override void RenderEndTag(HtmlTextWriter writer)
{
base.RenderEndTag(writer);
writer.Write("\r\n\t\t\t\t\t\t\t<!-- end thin37421@126.com -->");
}

老大,這樣你都敢寫, 你不想用你的郵箱了嗎? 會被垃圾郵件搞死的

  回复  引用  查看    
#26楼2005-05-19 16:52 | 春鱼      
ValidateTextBox
类名就取错了. 应该是:
ValidatableTextBox

  回复  引用  查看    
#27楼[楼主]2005-05-19 17:26 | THIN(仁与渣)      
无validatable这个词,呵呵
  回复  引用    
#28楼2005-06-08 22:13 | michleliu
期待楼主的开源。。。



发表评论

昵称: [登录] [注册]

主页:

邮箱:(仅博主可见)

评论内容:

  登录  注册

[使用Ctrl+Enter键快速提交评论]

0 137369




相关文章:

相关链接: