在Javascript中检查keyup事件

时间:2013-04-09 14:15:33

标签: javascript

我正在尝试使用jQuery Credit Card Validator来验证信用卡。

基本用法为

$('#cc_number').validateCreditCard(function(result)
{
alert('CC type: ' + result.card_type.name
  + '\nLength validation: ' + result.length_valid
  + '\nLuhn validation: + result.luhn_valid');
});

我查看了该网站上包含的演示JS文件,但无法制作头部和尾部。

我想要实现的是输入的关键,根据捕获的卡类型做一些事情:

 //on key up of input
 if (card == valid) 
   {
     if (card == visa)
      {
        //do something
      }
     else if (card == mastercard)
     {
        //do something
     }
       // repeat for rest of card types
   }
 else
   {
     //Just print an error
   }

我知道这是相当基本的东西,但任何人都可以帮助我实现目标吗?

 my HTML:
 <input type="text" id="cc_number" />

3 个答案:

答案 0 :(得分:3)

jQuery信用卡验证器开发人员。

jCCV绑定keyup事件,因此您不需要这样做。 (实际上它比这复杂一点 - 所有你需要知道的是每次字段的值改变,你的回调函数被执行)。

$('#cc_number').validateCreditCard(function(result)
{
    // this will execute everytime the value of the `#cc_number` field changes

    if (result.length_valid && result.luhn_valid) {
        if (result.card_type.name == 'visa') {
            // do something
        } else if (result.card_type.name == 'mastercard') {
            // do something
        }       
        // repeat for rest of card types
    } else {
        // just print an error
    }
});

答案 1 :(得分:1)

尝试这样的事情:

$("#cc_number").on("keyup", function() {
    $(this).validateCreditCard(function(result) {
    alert('CC type: ' + result.card_type.name
      + '\nLength validation: ' + result.length_valid
      + '\nLuhn validation: ' + result.luhn_valid);
    });

    if (result.card_type.name) {
      if (result.card_type.name == visa)
      {
         //do something
      }
      else if (result.card_type.name == mastercard)
      {
         //do something
      }
      // repeat for rest of card types
   }
   else {
     //Just print an error
   }
});

答案 2 :(得分:-1)

使用条纹:https://github.com/stripe/jquery.payment

好多了。