首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >扩展Jquery插件http://bassistance.de/jquery-plugins/jquery-plugin-validation/

扩展Jquery插件http://bassistance.de/jquery-plugins/jquery-plugin-validation/
EN

Stack Overflow用户
提问于 2011-09-13 23:21:44
回答 1查看 479关注 0票数 0

我正在尝试在我的插件中扩展jQuery表单插件。我已经在下面写了代码,但我在submitHandler中得到了无限循环。

我的代码出了什么问题?我怎么才能修复它?

代码语言:javascript
复制
(function($) {
  $.fn.extend({ 
    //plugin name - myvalidateform
    myvalidate: function(options) { 
      //Settings list and the default values
      var defaults = {     
        relues:null,
        url:null,
        password:0,
        type:'get',
        ajax:null
      };     
      var o2 = $.extend(defaults, options);         
      return this.each(function() {        
        var o =o2;
        var obj = $(this);                   
        var formplugin= $(obj).validate({
          submitHandler: function(form) {
          alert("a");
         $(form).submit();
      }
      });          

      });
    }
  });
})(jQuery);
EN

回答 1

Stack Overflow用户

发布于 2011-09-14 00:03:09

验证器覆盖提交,所以您只是调用验证器刚刚附加到的提交。

尝试更改它(在验证器中):

代码语言:javascript
复制
validator.settings.submitHandler.call( validator, validator.currentForm );
if (validator.submitButton) {
// and clean up afterwards; thanks to no-block-scope, hidden can be referenced
    hidden.remove();
}
return false;

至:

代码语言:javascript
复制
if (validator.submitButton) {
// and clean up afterwards; thanks to no-block-scope, hidden can be referenced
    hidden.remove();
}
return validator.settings.submitHandler.call( validator, validator.currentForm ) ? true : false;

现在,如果你想提交,你应该能够在你的submitHandler上使用"return true“来提交表单。现在有可能我犯了一个错误,有一个更好的方法来做,但至少我有一些可能有用的答案。

如果你愿意,也可以在我的网站上查看jQuery插件开发指南。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/7404375

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档