编程开源技术交流,分享技术与知识

网站首页 > 开源技术 正文

2022,validate的项目实例demo,搬砖即可

wxchong 2024-07-29 08:16:30 开源技术 48 ℃ 0 评论
seajs.use('dist/jquery.validate.min.js',function(){
  /* 通用信息提交方法 */
  function ajaxPostInfoFormAct($form,callBack,noMask){
    $submit = $form.find('input[type=submit]');
    if($submit.attr('data_lock')){
      return false;
    }
    $submit.attr('data_lock',1).addClass('disabled');
    url = $form.attr('action');
    param=$form.serialize();
    $.ajax({
      url : url,
      type:'post',
      data : param,
      dataType:'json',
      success : function(r){
        if(r.code == 0){
          callBack(r);
        }else{
          if(noMask){
            ajax_message(r.message,true);
            setTimeout(function(){
              $ajaxMessageBox.fadeOut();
            },1000);
          }else{
            ajax_message(r.message);
          }
        }
      },
      error: function(){
        if(noMask){
          ajax_message(errorHtml,true);
          setTimeout(function(){
            $ajaxMessageBox.fadeOut();
          },1000);
        }else{
          ajax_message(errorHtml);
        }

      },
      complete:function(){
        $submit.removeAttr('data_lock').removeClass('disabled'); 
      }
    });
    return false;
  };//通用信息提交方法end
  
  //跳转页面回调函数
  function hrefCallBack(r){
    window.location.href=r.data.url;
  };
  //刷新当前页面回调函数
  function reloadCallBack(r){
    window.location.reload();
  }
  //刷新当前页面有提示
  function reloadTipClallBack(r){
    $successTip.text(r.message).fadeIn();
    setTimeout(function(){
      $successTip.fadeOut().empty();
      // window.location.reload();
      // 接口如果有返回url,则去url,否则刷新当前页面
      if (r.data.url) {
        window.location.href=r.data.url
      } else {
        window.location.reload();
      }
    },1000);
  };
  
  //以下****就开始上述方法的调用啦!!
  /*通用表单提交*/
  $commonPostForm.validate({
    submitHandler : function() {
      ajaxPostInfoFormAct($commonPostForm,hrefCallBack);
    }
  });
  
  /*保存信息*/
  $saveDataForm.validate({
    submitHandler : function() {
      //校验通过后,调用ajaxPostInfoFormAct这个通用方法
      ajaxPostInfoFormAct($saveDataForm,reloadTipClallBack);
    }
  });
});

2、保存草稿,单独的validate使用


  /*保存草稿*/
  $saveDraftBtn.off('click').on('click',function(){
    if($commonPostForm.valid()){//如果校验通过
      var $t = $(this);
      if($t.attr('data_lock')){
        return false;
      }
      $t.attr('data_lock',1).addClass('disabled');
      param=$commonPostForm.serialize();
      url=$commonPostForm.attr('save-action');
      $.ajax({
        url : url,
        type: 'post',
        data: param,
        dataType: 'json',
        success: function(r){
          if ( r.code == 0 ) {
            $successTip.text(r.message).fadeIn();
            setTimeout(function(){
              $successTip.fadeOut().empty();
              window.location.href=r.data.url;
            },1000);
          } else {
            ajax_message(r.message);
          }
        },
        error: function(){
          ajax_message(errorHtml);
        },
        complete:function(){
          $t.removeAttr('data_lock').removeClass('disabled'); 
        }
      });
      return false;
    }
  });

Tags:

本文暂时没有评论,来添加一个吧(●'◡'●)

欢迎 发表评论:

最近发表
标签列表