• Jquery Validate 插件的使用


    • 先上段代码,边看边解释
    (function($){
      /××这两段是使用CKEDITOR 时候用到的,目的是onfucus,onblur 的时候CKEIDTOR 里面的内容可以显示隐藏
      ××
    CKEDITOR.instances.ck_post_textarea这段就是一个CKEDITOR的实例,因为可以一个页面多个ckeditor编辑框嘛,ck_post_textarea是ckeditor替换的元素名称
      ××/

    CKEDITOR.instances.ck_post_textarea.on('focus',function(){
    if(this.document.getBody().getFirst().getText()=="Please Fill Contents Here!"){
                this.document.getBody().getFirst().removeClass("ck_contents_empty")
                                                  .setText("");
            }
        })
        CKEDITOR.instances.ck_post_textarea.on('blur',function(){
            if(this.document.getBody().getFirst().getText()==""){
                this.document.getBody().getFirst().setText("Please Fill Contents Here!");
            }
        })
        $("#adds").validate({
            rules:{
                q_title:{
                    required:true
                },
                q_type:{
                    required:true
                }
            },    
             submitHandler:function(form){
                if(CKEDITOR.instances.ck_post_textarea.document.getBody().getText()=="" || CKEDITOR.instances.ck_post_textarea.document.getBody().getText()=="Please Fill Contents Here!"){
              //这里addClass class必须写在ckeditor目录下的contents里面,因为它是使用了IFRAME,它有自己的css引用在CKEDTOR目录下
    CKEDITOR.instances.ck_post_textarea.document.getBody().getFirst().addClass("ck_contents_empty"); }else{ $("#add_question").find(":submit").attr("disabled", true).attr("value", "Submitting...");
             /××关键点是要记这里,最开始我使用的是$("#adds").submit();然后就发现一直重复提交,我就纳闷了N久,终于后面发现了要以现在的方式做提交

    form.submit();
                }        
    
            }        
        })
    })($);

    记录这个是因为不够仔细啊,文档么看全,其实纠结的地方文档上面有写,只是没看到。解释如下:

    Too much recursion
    
    Another common problem occurs with this code:
    
    $("#myform").validate({
     submitHandler: function(form) {
       // some other code
       // maybe disabling submit button
       // then:
       $(form).submit();
     }
    });
    This results in a too-much-recursion error: $(form).submit() triggers another round of validation, resulting in another call to submitHandler, and voila, recursion. Replace that with form.submit(), which triggers the native submit event instead and not the validation.
    
    So the correct code looks slightly different:
    
    $("#myform").validate({
     submitHandler: function(form) {
       form.submit();
     }
    });
    

      

  • 相关阅读:
    多年收集的一些稀有软件1
    Object-C中使用NSKeyedArchiver归档(将各种类型的对象存储到文件中)
    转-- iOS 30多个iOS常用动画,带详细注释
    转-ios设备唯一标识获取策略
    微信授权
    Windows服务Demo
    查询某个时间段在另一个时间段里面的时间
    微服务官方文档链接
    c# html 转word
    Unreal4 入门(配置)
  • 原文地址:https://www.cnblogs.com/akulubala/p/2864749.html
Copyright © 2020-2023  润新知