首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 网站开发 > Web前端 >

对jquery印证框架form validation的改进

2012-11-22 
对jquery验证框架form validation的改进不错的jquery验证框架-form validation使用总结一帖中作者对英文原

对jquery验证框架form validation的改进

不错的jquery验证框架-form validation使用总结一帖中作者对英文原版进行改进和汉化,但无论是原版和这个“汉化版”在ie6下验证提示都会被select标签遮挡,这本是ie6的bug,参照bgiframe插件 的代码,我进行了一些修改。

?

 settings = jQuery.extend({allrules:allRules,validationEventTriggers:"blur",inlineValidation: true,returnIsValid:false,animateSubmit:true,unbindEngine:true,ajaxSubmit: false,promptPosition: "topRight",// OPENNING BOX POSITION, IMPLEMENTED: topLeft, topRight, bottomLeft, centerRight, bottomRightsuccess : false,failure : function() {},fixIE6Select: "auto"  //auto,fix,unfix}, settings);

?配置上增加了fixIE6Select参数,默认为"auto"即自动判断页面中有没有select标签,有则启用。

?

?

if($.browser.msie && /6.0/.test(navigator.userAgent)){   var selectNum=$('select').length;   var IE6html='<iframe frameborder="0" tabindex="-1" src="javascript:false;" ';   IE6html+='style="display:block;position:absolute;z-index:-1;';   IE6html+='top:expression(((parseInt(this.parentNode.currentStyle.borderTopWidth)||0)*-1)+\'px\');';   IE6html+='left:expression(((parseInt(this.parentNode.currentStyle.borderLeftWidth)||0)*-1)+\'px\');';   IE6html+='width:expression(this.parentNode.offsetWidth+\'px\');';   IE6html+='height:expression($(this).parent().find(\'.formErrorContent\').outerHeight()+\'px\');" />';   switch($.validationEngine.settings.fixIE6Select){      case "unfix": break;  case "fix":     $(divFormError).append(IE6html); break;  default:  //auto     if(selectNum>0){        $(divFormError).append(IE6html); }   }     }

?在验证提示文本内容下添加一层iframe。

1 楼 jquery_gz123 2010-03-02   传入方法校验,以及页面元素有上下文关系的校验貌似不行。 2 楼 matychen 2010-03-03   有空试一试 3 楼 suxing 2010-03-06   jquery_gz123 写道传入方法校验,以及页面元素有上下文关系的校验貌似不行。
可否讲得具体些,我好像没发这个问题。 4 楼 jquery_gz123 2010-03-22   你好,不好意思,好久没上论坛了。
一般有这样的情况,用户自定义函数(比如校验页面上两个元素)返回true或者false,返回false时需要校验,否则不需要。不清楚是否有这样的功能?

热点排行