2012-10-23 105 views
0
<html> 
<head> 
<title>Coupon test code</title> 
<style> 
#error{ 
color: red; 
font-weight: bold; 
} 
</style> 
</head> 

<body> 
    <form name="couponField" action=""> 
     <span id="error"></span> 
     Coupon code: 
     <input type="coupon" id="coupon" name="coupon"> 
     <input type="button" id="submit" value="Apply Coupon Code"> 
    </form> 

<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.8.2/jquery.min.js"></script> 
<script> 
$('#submit').click(function(){ 
    if($('#coupon').val() == 'PROMO CODE'){ 
     $('#error').text('correct code!'); 
    }else{ 
     $('#error').text('wrong code!'); 
    } 

}); 
</script> 

</body> 
</html> 

上面的代碼執行以下操作: 1.驗證如果輸入優待券代碼正好等於「促銷代碼」 2.驗證如果該字段爲空。JS表單驗證

我們正在努力做什麼: 1.保持'PROMO CODE'的驗證完好無損。 2.刪除空字段的驗證。

這是我們希望用戶輸入促銷代碼的訂單的一部分。但是,由於所有用戶都可能沒有促銷代碼,因此我們希望用戶可以選擇將該字段留空。目前的驗證是使這個領域成爲'必需'領域。

任何建議,非常感謝。謝謝!

+2

您的促銷代碼在客戶端來源...所以所有用戶都有它。 – Quentin

+1

你不應該在客戶端進行驗證。 – Joseph

+0

昆汀和約瑟夫的夢想家 - 感謝您的提示。但仍然想知道如何進行驗證。 – cr1418

回答

0
$('#submit').click(function(){ 
    var input = $('#coupon').val(); 
    if(input === 'PROMO CODE'){ 
    $('#error').text('correct code!'); 
    } else if (input !== ''){ 
    $('#error').text('wrong code!'); 
    } 
}); 

請確保您在JavaScript中使用===而不是==

+0

就好像OP將執行除複製/粘貼代碼之外的任何其他內容...... – jahroy