2011-04-18 3 views
1

나는 모두가 등,이 제출 된 후 폼에 버튼을 제출 사람들을 더블 클릭 버튼을 제출 방지하기 위해 비활성화하려면 다음을 사용했다 : 나는, jquery.validate을 사용하고jQuery 유효성 검사를 제대로 실행하면서 양식 제출을 하나만 보장하려면 어떻게해야합니까?

jQuery (function ($) { 
    $('form').bind ('submit', function() { 
     $(this).find ('button').attr ('disabled', 'disabled'); 
    }); 
}); 

의 경우에 어떤 유효성 검사 오류는 양식이 제출 될 때 '제출'을 계속 실행하므로 사용자는 오류가있는 양식으로 남아 있고 제출 버튼을 사용할 수 없습니다.

양식에 jquery.validation 오류가 있는지 검색하도록 위의 코드를 어떻게 수정할 수 있습니까?

+0

어떻게 유효성 검사를 연결합니까? 마크 업을 보여줄 수 있습니까? – hunter

답변

2
$(function() { 
    $('form').bind('submit', function() { 
     $(this).find('input:submit').attr('disabled', true); 
    }); 
}); 

당신은 형태가 유효한지 확인할 수 있습니다 $("form").valid()

0

화재 수동 제출 버튼 클릭 이벤트에서 검증 및 return false;을 방지하기 위해 오류가 발생할 경우 POST :

$('#submit').click(function(){ if(!validate()) return false; }); 

var validate = function() { if($('#txtFirst').val().trim() == '') return false;} 
//etc... 
0

를 호출하여 나는 당신의 더 큰 문제가 "왜 jQuery Validate Validate Error?"라고 말하고 싶습니다. 그것을 해결하면 너무 걱정할 필요가 없습니다. 이상적으로, 당신은 jQuery Validate Submit Handler로부터 이런 종류의 것을 실행해야합니다. 검증이 실행되면

http://docs.jquery.com/Plugins/Validation/validate#options

, 그것은 추가 처리를 위해 submitHandler를 호출합니다.

$("#myForm").validate({ 
    submitHandler: function(form) { 
    $(form).find ('button').attr ('disabled', 'disabled'); 
    $(form).submit(); 
    } 
}) 
관련 문제