Can';我无法通过JavaScript信用卡验证找出我的语法错误

Can';我无法通过JavaScript信用卡验证找出我的语法错误,javascript,validation,debugging,Javascript,Validation,Debugging,我正在学习JavaScript,并尝试在表单中进行信用卡验证。我在下面代码的第10行遇到语法错误,无法找出我做错了什么。我还注意到,当我在Text Wrangler中添加最后一个大括号时,它说我有一个不匹配的大括号,但如果我去数一数,它们似乎是匹配的,所以我不确定我哪里出错了 <script type="text/javascript"> function validateCard() { if (document.forms[0].cardName.value == "Americ

我正在学习JavaScript,并尝试在表单中进行信用卡验证。我在下面代码的第10行遇到语法错误,无法找出我做错了什么。我还注意到,当我在Text Wrangler中添加最后一个大括号时,它说我有一个不匹配的大括号,但如果我去数一数,它们似乎是匹配的,所以我不确定我哪里出错了

<script type="text/javascript">
function validateCard() {
if (document.forms[0].cardName.value == "American Express") {
    var cardProtocol = new RegExp("^3[47][0-9]{13}$");
    if (cardProtocol.test(document.forms[0].cardNumber.value))
        document.forms[0].ccResult.value = "Valid credit card number";
    else
        document.forms[0].ccResult.value = "Invalid credit card number";
    } 
else if (document.forms[0].cardName.value == "Diners Club" {
    var cardProtocol = new RegExp ("^3(?:0[0-5]|[68][0-9])[0-9]{11}$");
    if (cardProtocol.test(document.forms[0].cardNumber.value))
        document.forms[0].ccResult.value = "Valid credit card number";
    else
        document.forms[0].ccResult.value = "Invalid credit card number";
    }
else if (document.forms[0].cardName.value == "Discover" {
    var cardProtocol = new RegExp ("^6(?:011|5[0-9]{12}$");
    if (cardProtocol.test(document.forms[0].cardNumber.value))
        document.forms[0].ccResult.value = "Valid credit card number";
    else
        document.forms[0].ccResult.value = "Invalid credit card number";
    }
else if (document.forms[0].cardName.value == "JCB" {
    var cardProtocol = new RegExp ("^(?:2131|1800|35\d{3})\d{11}$");
    if (cardProtocol.test(document.forms[0].cardNumber.value))
        document.forms[0].ccResult.value = "Valid credit card number";
    else
        document.forms[0].ccResult.value = "Invalid credit card number";
    }
else if (document.forms[0].cardName.value == "Mastercard" {
    var cardProtocol = new RegExp ("^5[1-5][0-9]{14}$");
    if (cardProtocol.test(document.forms[0].cardNumber.value))
        document.forms[0].ccResult.value = "Valid credit card number";
    else
        document.forms[0].ccResult.value = "Invalid credit card number";
    }
else if (document.forms[0].cardName.value == "Visa" {
    var cardProtocol = new RegExp ("^4[0-9]{12}(?:[0-9]{3})?$");
    if (cardProtocol.test(document.forms[0].cardNumber.value))
        document.forms[0].ccResult.value = "Valid credit card number";
    else
        document.forms[0].ccResult.value = "Invalid credit card number";
    }
}
</script>

函数validateCard(){
if(document.forms[0].cardName.value==“美国运通”){
var cardProtocol=newregexp(“^3[47][0-9]{13}$”;
if(cardProtocol.test(document.forms[0].cardNumber.value))
document.forms[0].ccResult.value=“有效信用卡号”;
其他的
document.forms[0].ccResult.value=“无效的信用卡号”;
} 
else if(document.forms[0].cardName.value==“就餐者俱乐部”{
var cardProtocol=newregexp(“^3(?:0[0-5]|[68][0-9])[0-9]{11}$”;
if(cardProtocol.test(document.forms[0].cardNumber.value))
document.forms[0].ccResult.value=“有效信用卡号”;
其他的
document.forms[0].ccResult.value=“无效的信用卡号”;
}
else if(document.forms[0].cardName.value==“Discover”{
var cardProtocol=newregexp(“^6(?:011 | 5[0-9]{12}$”);
if(cardProtocol.test(document.forms[0].cardNumber.value))
document.forms[0].ccResult.value=“有效信用卡号”;
其他的
document.forms[0].ccResult.value=“无效的信用卡号”;
}
else if(document.forms[0].cardName.value==“JCB”{
var cardProtocol=newregexp(“^(?:2131 | 1800 | 35\d{3})\d{11}$”;
if(cardProtocol.test(document.forms[0].cardNumber.value))
document.forms[0].ccResult.value=“有效信用卡号”;
其他的
document.forms[0].ccResult.value=“无效的信用卡号”;
}
else if(document.forms[0].cardName.value==“万事达卡”{
var cardProtocol=newregexp(“^5[1-5][0-9]{14}$”;
if(cardProtocol.test(document.forms[0].cardNumber.value))
document.forms[0].ccResult.value=“有效信用卡号”;
其他的
document.forms[0].ccResult.value=“无效的信用卡号”;
}
else if(document.forms[0].cardName.value==“Visa”{
var-cardProtocol=newregexp(“^4[0-9]{12}(?[0-9]{3})?$”;
if(cardProtocol.test(document.forms[0].cardNumber.value))
document.forms[0].ccResult.value=“有效信用卡号”;
其他的
document.forms[0].ccResult.value=“无效的信用卡号”;
}
}

你的
的条件如果
没有结束
,你的
其他
没有开始
{
等等。你可以使用类似于检查语法的工具。

你的脚本末尾缺少两个
,谢谢你的资源,结束)解决了问题。