2014-02-15 6 views
0

아약스를 통해 양식을 제출하는 데 두 가지 방법이 사용되고 있습니다. 어느 것이 유효합니까? 첫 번째 경우 $ ajax를 사용하지 않는 이유는 무엇입니까?양식 제출 Ajax를 사용하여 - 올바른 방법은 무엇입니까?

방법 1 :

$(form).on("submit", function (event) { 
     event.preventDefault(); 
     $(this).serialize(); 
    }); 

방법 2 :

$(function() { 
$(form).on("submit", function (event) { 
    $.ajax({ 
     type: "POST", 
     url: "pathscript.php", 
     data: $(this).serialize() 
    }).done(function() { 

    }).fail(function() { 

    }); 
    event.preventDefault(); // Prevent the form from submitting via the browser. 
    }); 
}) 
+0

감사합니다. – Thomasmkov

+0

아약스 전에 'var formData'에 양식 데이터를 저장해보십시오. (예 :'var formData = $ (this) .serialize();'그런 다음 ajax를'data : formData'와 함께 사용) –

답변

2

방법 1 모든 요청을 보내지 않고 양식을 제출하지 않습니다. 방법 2를 사용해야합니다.

$(this).serialize(); 

콘텐츠를 직렬화합니다.

마지막 결론 방법은 올바른 방법이며 AJAX 양식 제출 만 수행합니다.

+0

만약 우리가 event.preventDefault()를 Method 1에서 제거했다면, – Thomasmkov

+0

'preventDefault'가 없으면 양식이 제출됩니다 – Igor

+0

그 경우 어떤 방법이 맞습니까? – Thomasmkov

관련 문제