私はクレジットカードプロジェクトに取り組んでいます。私は、クレジットカードの有効性を確認し、クレジットカードの種類を返すのに役立つJavaScript(validateCreditCard
)の機能を持っています。クレジットカードの種類を取得した後、フォームの提出後に使用する隠し入力cardType
の値として保存します。サブミットボタンをクリックした後、cardFormValidate
関数がtrue
を返した場合、ユーザーは 'proceed.php'に移動します。条件が満たされた場合にフォームを検証する
これは私がこれらのコード行を記述することによって実現しようとしているものですが、非表示入力の値はまだ空です。親切に私を助けてください。 は申し訳ありませんが、私は
1)最初のチェックは、あなたはCard_Number
を得ている。..
function cardFormValidate() {
//Card validation
var card_number = $('#CreditCardNumber');
card_number.validateCreditCard(function (result) {
var cardType = (result.card_type == null) ? '' : result.card_type.name;
if (result.valid) {
$("#cardType").val(cardType);
cardValid = true;
} else {
$("#cardType").val('');
cardValid = false;
}
return cardValid;
});
}
$(document).ready(function() {
//Submit card form
$("#PayButton").on('click',function(){
if (cardFormValidate()) {
//Move to proceed.php to treat the form
}else{
alert('bad credit card');
}
});
});
<form method="post" action="proceed.php">
<input name="cardType" type="hidden" id="cardType">
<div class="form-group">
<label for="NameOnCard">Name on card</label>
<label for="NameOnCard"></label><input id="NameOnCard" class="form-control" type="text" name="NameOnCard" maxlength="255"/>
</div>
<div class="form-group">
<label for="CreditCardNumber">Card number</label>
<input id="CreditCardNumber" class="null card-image form-control" name="CreditCardNumber" type="text"/>
</div>
<button id="PayButton" type="submit"></button>
</form>
name
性質を持っている必要がありますvalidateCreditCard
の2)リターン・データ、あなたのJS関数は 'else { $("#cardType ")。val( '');}を実行していません。 cardValid = false; } 'else部分? –