【问题标题】:jquery code is not working properlyjquery 代码无法正常工作
【发布时间】:2016-12-31 12:06:07
【问题描述】:

我有一个订单表格,在提交订单之前,用户必须通过验证码才能货到付款...

我正在使用 jQuery 检查验证码是否正确。

如果输入的验证码错误,我不会让用户使用 preventDefault 提交表单,并且会提醒错误。但是输入正确的验证码后,仍然不允许用户提交订单。

这是我的代码...

//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();
          }
      });

【问题讨论】:

  • 你有检查验证码的代码吗?
  • @Kiran.B 是的......一切正常......如果我输入正确的验证码,输入框的边框将是绿色的,如果验证码错误,它也会显示味精......但是当我提交表单时出现问题...它检查我制作的全局验证码变量...
  • 你能检查一下在提交表单时,控制是否进入了函数?
  • @Kiran.B No.. 当我提交表单时,它只会检查这两个 if & else 密码和验证码......所以它不会进入功能......我已经检查过使用警报
  • 尝试删除第 6 行的关键字 'var'。看起来它创建了一个局部变量,而提交函数使用的是全局变量。

标签: javascript jquery codeigniter jquery-mobile codeigniter-2


【解决方案1】:

删除“click”函数中“captcha”变量的 var 关键字。看起来它在提交函数使用全局变量时创建了一个新的局部变量。

P.S:请查看问题上的 cmets 以了解我们是如何得出解决方案的。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2017-02-28
    • 2017-08-01
    • 1970-01-01
    • 1970-01-01
    • 2015-07-16
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多