2012-12-04 4 views
1

를 제출 한 경우 검사 기능을 만드는 방법 : 양식이 제출되면jQuery를, 자바 스크립트 - 양식이 코드가

if($('input[name=id]').length == 1 && $('input[name=submitted]').length != 1) 
    { 
    var id = $('input[name=id]').val(), 
    name = $('input[name=staro_ime]').val(); 
    img_upload(name, id); 
    } 

이 제출 한 이름 와 숨겨진 입력 필드가 만들어집니다. 양식이 제출 된 시점을 확인한 다음 위의 코드를 비활성화하려면 어떻게합니까? (이 기능은 submit_event 외부에 있습니다).

답변

0

양식에 제출 이벤트를 추가하기 만하면됩니다. 한 번만 기능을 실행하려면

$('#your_form').on('submit',function() { 
    $('#your_form').append("<input type='hidden' id='hidden_form' name='submitted' value='something' />"); 
} 

, 당신은 사용자가 설정 한 이벤트의 변수 아웃 사이드를 사용하거나, 첨부 된 필드 형태로 존재하는 경우 당신은 확인할 수 있습니다. 변수 방법 사용 :

var formSubmitted = false; 
$('#your_form').on('submit',function() { 
    if(!formSubmitted) { 
    $('#your_form').append("<input type='hidden' id='hidden_form' name='submitted' value='something' />"); 
    //anything else you want to run one time 

    formSubmitted = true; 
    $('#your_form').submit(); 
    } else { 
    //submit form 
} 
+0

이벤트를 제출했는데 문제가되지 않습니다. 문제는 함수가 submit 이벤트 외부에 있다는 것입니다. 귀하의 경우 true를 반환하면 외부 함수에 대해 아무런 작업도 수행하지 않습니다. – Sasha

+0

내 답변 – kennypu

관련 문제