2012-03-29 1 views
0
$('#ms_cats_meta_eduyear, #ms_cats_meta_semester, #ms_cats_meta_subject').change(function() { 



       $('#publish').removeClass('button-primary-disabled'); 
       $('#save-post').removeClass('button-disabled'); 

       $('input#publish').click(function() { 
        var eduyear_val = $("#ms_cats_meta_eduyear").val(); 
        var semester_val = $('#ms_cats_meta_semester').val(); 
        var subject_val = $("#ms_cats_meta_subject").val(); 

        if (eduyear_val == -1 || semester_val == -1 || subject_val == -1){ 
         var msg= "من فضلك تأكد من ادخال جميع حقول اختيار التصنيف."; 
         $('#ajax-loading').hide(); 
         alert(msg); 
         return false; 

        }else{ 
         $('#publish').removeClass('button-primary-disabled'); 
         $('#save-post').removeClass('button-disabled'); 

         return true; 
        } 

       }); 

}); 

사용자가 세 개의 선택 상자 값이 -1 인 양식을 제출하려고하면이 기능을 사용하여 경고를 생성합니다. Alert는 선택 상자 값을 변경할 때 한 번 이상 증가합니다. 무엇이 잘못 되었습니까?여러 경고에서 javascript를 중지하는 방법은 무엇입니까?

+0

정말이 코드입니까? change() 이벤트 내부에 로컬 함수가 있습니까? 그리고 귀하의 예를 기반으로, 그것은 결코 부르지 않습니다. 나는 혼란스러워. –

+0

죄송합니다. 올바른 코드는 위입니다. –

+0

코드가 좀 이상합니다. 왜 익명 기능에서 verifyCats가 사용됩니까? –

답변

5

변경 이벤트 내에서 클릭 이벤트를 만듭니다. 즉, 이전에 이미 생성 된 이벤트 이외에 새 클릭 이벤트가 생성 될 때마다 변경 이벤트가 트리거됩니다.

클릭 이벤트를 변경 이벤트 외부로 이동하십시오.

관련 문제