2012-09-21 3 views
1

내가 제출하려는 내 페이지에서이 있고, 나는 아약스 호출을 사용하여 발생 제출 버튼을 클릭하면 올바른 메시지가 나타나며 모든 것이 잘 작동하는 것 같습니다. 그런 다음 두 번째로 제출 버튼을 다시 클릭하지만 아약스 호출을 통해 전송하는 데이터는 비어 있으므로 아약스 호출에 대해 잘못된 응답이 표시됩니다.Ajax 호출이 온 클릭 한 번만

왜 이런 일이 일어날 수 있는지 생각해보십시오.

미리 감사드립니다.

+1

예를 들어 다음과 같이 네트워크 트래픽을 검사하고 있습니까? dev에 크롬을 콘솔? 빈 데이터 페이로드로 Ajax 요청을 보냈습니까? jsfiddle에서 코드를 사용하면 (암호 데이터를 여러 번 보내면 요청이 전송 될 수 있습니다) 잘 작동하므로 다른 페이지 (예 : PHP 또는 페이지의 다른 JavaScript)에 있어야합니다. –

+1

ajax 호출 전에 두 번째 클릭 후 $ ('# password') .val() 값을 확인할 수 있습니까? –

+1

전체'$ .ajax' 호출을 제거하고 click 이벤트에서'alert ($ ('password') .val())'을 수행하여 클라이언트에 무언가가 아닌지 확인하는 것이 좋습니다 JavaScript 코드. 경고가 두 번 이상 발생하지 않으면 적어도 JavaScript 문제임을 알 수 있습니다. –

답변

0

버튼을 클릭하면 뒷면에도 게시됩니다. onclick 후에 event.preventDefault()을 사용하여 방아쇠 포스트를 중지합니다. 코드 수정을 시도하십시오.

... 
$("#password_change").click(function(e) { 
    e.preventDefault(); 
    $.ajax({ 
    ... 
    ... 
    }); 
}); 
... 
+0

아니요 작동하지 않습니다. – novellino

+0

내 업데이트를 확인하십시오. 나는 .click (function (e) {... 그 전에 놓친에 대한 전자 매개 변수를 추가했습니다. – Habibillah

+0

당신은 페이지가 다시로드 되는가 ("깜박"?) 제출 버튼을 클릭하면? 첫 번째를 클릭하거나 charaacters가 아직 있습니까? –