2016-12-31 3 views
-1

은 내가 주문 양식을 가지고 주문을 제출하기 전에, 사용자는 내가 보안 문자 코드가 오른쪽 또는 jQuery를 사용하여 잘못 여부를 확인하고 ... 배달에 현금 보안 문자 코드를 통해jQuery 코드가 제대로 작동하지 않습니다

을 이동해야합니다 .

입력 한 보안 문자 코드가 틀린 경우 사용자가 preventDefault를 사용하여 양식을 제출하도록 허용하지 않으며 오류에 대해 경고합니다. 하지만 captcha 코드를 올바르게 입력 한 후에도 사용자가 주문을 제출할 수는 없습니다. 여기

내 코드는 ...

//for captcha code 
     var captcha = null; 
     //check if captcha code is right 
     $("#apply_captcha").on("click", function(){ 
     var captchaUrl = '<?php echo base_url(); ?>index.php/checkout/check_captcha/'; 
     var captcha = $('#userCaptcha').val(); //user entered value for captcha 
      $.ajax({ 
       url: captchaUrl, 
       type: 'POST', 
       data: 'captcha='+captcha, 
       success: function(result) 
       { 
        if(result === "success") 
        { 
         captcha = true; 
         $('#captcha_msg').hide(); 
         $('#userCaptcha').css('border', '2px solid green'); 
        } 
        else 
        { 
         captcha = false; 
         $('#captcha_msg').text("Sorry, Your captcha is wrong."); 
         $('#captcha_msg').css('color', '#cb2700'); 
        } 
       } 
      }); 
     }); 

     $('#orderform').submit(function(e) 
     { 
      if(!pincode_available) 
      { 
       alert("Sorry, We are not supplying any product at this area right now."); 
       e.preventDefault(); 
      } 
      else if(!captcha) 
      { 
       alert("Sorry, Your captcha is wrong"); 
       e.preventDefault(); 
      } 
     }); 
+0

captcha를 확인하는 코드가 있습니까? –

+0

@ Kiran.B 예 ... 모든 것이 정상적으로 작동합니다. 올바른 입력란을 입력하면 입력 상자의 테두리가 녹색으로 표시되고 틀린 함선의 경우에도 메시지가 표시됩니다 .. 하지만 문제는 내가 제출할 때 발생합니다. 양식 ... 내가 글로벌하게 만든 captcha 변수를 확인합니다 ... – ravi

+0

양식 제출시 제어 기능에 들어가는 지 확인할 수 있습니까? –

답변

1

은 '클릭'기능에서 '보안 문자'변수에 var 키워드를 제거합니다. 제출 기능이 전역 변수를 사용하는 동안 새 로컬 변수를 만드는 것처럼 보입니다.

추신 : 문제의 의견을 참조하여 해결 방법을 확인하십시오.