EasyTools的AjaxTextBox

来源:互联网 发布:晶体结构优化有什么用 编辑:程序博客网 时间:2024/05/27 09:47

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 1function Ets_AjaxTextBox_DefaultErrorfun(obj,lbobj,wrongtag) 2{ 3 lbobj.style.color = obj.errcolor; 4 if(obj.isshowpic) 5 { 6 switch (wrongtag) 7 { 8 case 1: 9 lbobj.innerHTML=Ets_AjaxTextBox_Source.errpic+obj.empstr; 10 break; 11 12 case 2: 13 lbobj.innerHTML=Ets_AjaxTextBox_Source.errpic+obj.expstr; 14 break; 15 16 case 3: 17 lbobj.innerHTML=Ets_AjaxTextBox_Source.errpic+obj.lenstr; 18 break; 19 20 case 4: 21 lbobj.innerHTML=Ets_AjaxTextBox_Source.errpic+obj.aerrstr; 22 break; 23 24 case 5: 25 lbobj.innerHTML=Ets_AjaxTextBox_Source.errpic+obj.cusstr; 26 break; 27 } 28 } 29 else 30 { 31 switch (wrongtag) 32 { 33 case 1: 34 lbobj.innerHTML=obj.empstr; 35 break; 36 37 case 2: 38 lbobj.innerHTML=obj.expstr; 39 break; 40 41 case 3: 42 lbobj.innerHTML=obj.lenstr; 43 break; 44 45 case 4: 46 lbobj.innerHTML=obj.aerrstr; 47 break; 48 49 case 5: 50 lbobj.innerHTML=obj.cusstr; 51 break; 52 } 53 } 54}; 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 谢谢!

原创粉丝点击