EasyTools的AjaxTextBox详解

前两天已经发布了AjaxTextBox控件,但上篇文章只是简单的说这个控件有什么特点,怎样用。今天说下这个控件的高级应用(适用于对js脚本有点了解的用户使用)。

先说下控件的一些属性吧!如下图:

RegularExpression ---控件要验证的正则表达式,为空的时候表示不需要正则验证;

ShowFiledId----------提示标签的id,加入为空,默认会把提示语句显示在控件后面。如果跟某个label关联的时候,提示语句就会在这个label上面显示。

注意:ShowFiledId不管值是否为空,要显示提示语句,都必须不要修改下面的1,2,3,4这4个属性,

1.ValidErrorFun-------验证失败时候触发的js函数,默认值是:Ets_AjaxTextBox_DefaultErrorfun。

2.AjaxExceptionFun---做ajax验证发生异常的时候触发的js函数,默认值是:Ets_AjaxTextBox_DefaultExceptionfun。

3.onloadFun-----------做ajax验证的过程中loadding服务端返回的验证结果的等待过程触发的函数,默认值是:Ets_AjaxTextBox_DefaultLoadfun

4.SuccessFun----------所有验证都通过时执行的js函数,默认值是:Ets_AjaxTextBox_DefaultSuccessfun

5.CustomFun----------如果用户觉得上面的几种验证还是不能满足要求的话,可以考虑使用这个属性。默认值是:空。

上面这5个属性后面再特别介绍,如果用户自定义函数该怎么写。

IsShowPic--------------是否显示默认图片,如下图的√,X等图标

ValidErrorColor----------验证错误时ShowFiledId绑定的提示区域的文字颜色;(该效果只有在使用默认函数配置时有效,只要跟ShowFiledId相关的都要满足这个条件,如上面的:IsShowPic)

ValidSuccessColor-------验证成功时的文字颜色。(跟ShowFiledId相关)

还有一些文字提示的属性也是跟ShowFiledId相关。

EmptyErrorString------为空的时候提示的文字。(该属性只有在属性AllowEmpty=true的时候才有效)

RegularErrorString-----正则匹配不通过的时候提示的文字。(该属性只有在RegularExpression!=""的时候才有效)

LengthErrorString------长度验证不通过的时候提示的文字。

AjaxErrorString--------ajax验证不通过的时候提示的文字。(该属性只有当有服务端的ajax事件时才有效)

AjaxExceptionString----ajax验证服务端发生异常的时候提示的文字。(该属性只有当有服务端的ajax事件时才有效)

AjaxLoadString--------ajax请求等待过程中的提示文字。(该属性只有当有服务端的ajax事件时才有效)

SuccessString----------验证成功的时候显示的文字。

另外一些其他的属性

OnEvent---------------一个枚举类型,可以选择控件发生验证是在哪个事件里面。有两个值给选:onchange和onblur

AllowEmpty------------是否允许为空

MaxLen----------------输入框输入的最大长度,中文按两个字符算

IsValid------------------是否所有验证都通过,包括ajax验证,系统在后台会再次调用ajax事件.

这个控件是继承TextBox后开发,主要的事件只是添加多一个AjaxRequest事件。上面文章已经说过。

基本整个控件的东西都在这里了。下面说下用户自定义js函数该怎么写:

1.ValidErrorFun-------验证失败时候触发的js函数,默认值是:Ets_AjaxTextBox_DefaultErrorfun。

先看下Ets_AjaxTextBox_DefaultErrorfun

Code

 

 Ets_AjaxTextBox_DefaultErrorfun(obj,lbobj,wrongtag)

这里跟大家说明这几个参数

1.obj指的验证控件对象,他有几个属性:

isshowpic,是否显示图标

empstr,为空时显示的字符

expstr,正则匹配不通过的时候显示的文字

lenstr,长度太长显示的文字

aerrstr,ajax验证失败的时候显示的文字

aloastr,ajax验证过程中显示的文字

aexcstr,ajax异常的文字

cusstr,用户自定义验证不通过显示的文字

2.lbobj指的是绑定的label对象

3.wrongtag,通过这个参数,可以知道目前是什么过程发生验证错误,它有下面几个值:

   值1:为空的验证失败;值2:正则验证失败;值3:长度验证失败;值4:ajax验证失败;值5:用户自定义函数验证失败;

   整个验证顺序按1,2,3,5,4 的顺序验证

如果用想自己写这个验证错误时的js函数,可以参考上面Ets_AjaxTextBox_DefaultErrorfun(obj,lbobj,wrongtag),参数不变。

2.AjaxExceptionFun---做ajax验证发生异常的时候触发的js函数,默认值是:Ets_AjaxTextBox_DefaultExceptionfun。

3.onloadFun-----------做ajax验证的过程中loadding服务端返回的验证结果的等待过程触发的函数,默认值是:Ets_AjaxTextBox_DefaultLoadfun

4.SuccessFun----------所有验证都通过时执行的js函数,默认值是:Ets_AjaxTextBox_DefaultSuccessfun

5.CustomFun----------如果用户觉得上面的几种验证还是不能满足要求的话,可以考虑使用这个属性。默认值是:空。

这几个客户端函数都是型如:XXXX(obj,lbobj)

传入参数跟上面的一样,只是少了个wrongtag,用户如果想自己写这几个函数,可以参照控件默认函数,自己写出自定义的验证函数,达到你想要的任何效果。

补充下CustomFun一定要有返回值,如果通过用户字定义的验证方法,return true;否则return false;

最后希望大家在使用过程中有什么好的意见或bug都可以联系我。邮箱:hongkid@126.com

谢谢!

 

 

posted @ 2009-07-17 01:15  hongkid  阅读(1926)  评论(10编辑  收藏  举报