2016-07-11 1 views
2

양식 유효성 검사를 한 후에 ajax 함수를 호출하려고하는데 저에게 적합하지 않습니다. 아래 jquery on-submit 나를 위해 잘 작동하는 방법.jQuery 유효성 검사를 사용하여 submithandler에서 함수를 어떻게 호출 할 수 있습니까?

$('#promotionAdd').on('submit',(function(e) { 
     e.preventDefault(); 
     var formData = new FormData(this); 
     promotionAdd(formData); 
     return false; 
    })); 

하지만 나는 작동하지 않는 submithandler에서 같은 것을 호출해야합니다.

$(document).ready(function() { 
     $('#promotionAdd').validate({ // initialize the plugin 
      rules: { 
       mtitle: { 
        required: true, 
        minlength: 3, 
       } 
      }, 
      messages: { 
       mtitle: "Please enter Promotion Title", 
      }, 
      submitHandler: function (form) { // for demo 
       //alert(this); 
       e.preventDefault(); 
       var formData = new FormData(this); 
       promotionAdd(formData); 
       return false; 
      } 
     }); 
    }); 

내가 잘못한 곳을 안내해 줄 수있는 방법과 해결 방법이 있습니다. 나는 감사하고 싶다. 감사합니다

답변

2

submitHandlerthis은 플러그인이 호출 된 양식이 아니라 유효성 검사 플러그인을 나타냅니다. 함수에 전달 된 form 매개 변수를 대신 사용하십시오.

또한 preventDefault()e이 정의되지 않았고 return false이 아무런 작업도 수행하지 않으므로 오류가 발생합니다. 유효성 검사 플러그인이 양식 제출 방지를 처리하기 때문에 여기서는 필요하지 않습니다. 사용해보기 :

submitHandler: function (form) { 
    var formData = new FormData(form); // use 'form' here 
    promotionAdd(formData); 
} 
+0

나에게 지식을 공유해 주셔서 감사합니다. –