0
J'ai la JS suivant qui compare le numéro de carte de crédit longueur:Comparer les mauvais chiffres
validate: function() {
var ccLength = $('.credit-card input[name="cc_number"]').val().length;
var cardType = parseInt($('.credit-card .credit-card-type .selected').attr('rel'));
if (!isNaN(cardType)) {
console.log(ccLength); //11
console.log(provider[cardType].validLength.split(',')); // ["16", "13"]
if (ccLength == 0 || (cardType > 0 && (ccLength < parseInt(provider[cardType].validLength)) || (!$.inArray(ccLength, provider[cardType].validLength.split(','))))) {
triggerNotification('x', 'Your credit card number isn\'t long enough');
return false;
} else {
if ($('.credit-card input[name="cc_cvv"]').val().length < 3) {
triggerNotification('x', 'You must provide a CCV');
return false;
}
}
} else {
triggerNotification('x', 'Credit card type is not recognized or accepted');
return false;
}
return true;
},
J'ai inclus les valeurs de console.log() sur la 5e & 6e lignes. Pour une raison quelconque, il ne manque pas ...
mise à jour
provider[cardType].validLength
est toujours soit '16,13'
ou '16'
peut vous fournir l'entrée de l'échantillon qui est en cours de validation? et pourquoi vous pensez qu'il devrait échouer – Matt
L'exemple d'entrée est inclus dans le commentaire après console.log() – Webnet
Qu'est-ce que '(ccLength