2010-11-29 5 views
0

Ajax 양식 제출 사용성. 내가 양식을 제출할 때 나는 이전 제출이 일어날 때까지 양식을 제출할 수 없도록하고 싶다. 입력 또는 텍스트 영역을 비활성화하여이 작업을 수행 할 수 있습니까? 아니면 제출 버튼도 비활성화해야합니까?jQuery Ajax 양식 제출 - 제출시 사용 안함

은 물론
<form onsubmit="return false">... 

제출 여부를 결정 자바 스크립트 기능을 할 것이다 :

+3

제출 버튼을 사용하지 않는 것이 좋습니다. –

답변

4

당신은 onsubmit 핸들러가 false를 돌려 수 있도록함으로써 양식 제출을 해제 할 수 있습니다

<form onsubmit="return myDecisionFunction()">... 

귀하의 경우 의사 결정 기능은 다음과 같을 수 있습니다.

var submissionEnabled = true; 
function myDecisionFunction() { 
    if (submissionEnabled) { 
     submissionEnabled = false; 
     return true; 
    } else { 
     return false; 
    } 
} 

그는 아약스 응답이 와서, 당신은 다시 활성화 :

submissionEnabled = true; 
1

난 제출 버튼을 비활성화하여 이런 짓을.

$("#submit").click(function(){ 
    $(this).attr('disabled', 'disabled'); 
    $("#form").submit(); 
}) 
+3

사용자가 양식에서 Enter 키를 누르면 어떻게됩니까? – cstamas

+0

이 해결 방법은 개발자가 제출 작업을 수행하는 데 필요한 버튼을 미리 알고있는 경우에 따라 다릅니다. 그러나 양식 제출 프로세스는 여러 가지 방법으로 시작될 수 있습니다. 입력, 코드, 클릭, 스페이스 바. –