簡體   English   中英

警報框不出現-此功能有何不正確之處?

[英]alert box not coming up - what is incorrect in this function?

<script type="text/javascript"> 
function check_phone(){
    var x=$('#phone1').val();
    var landline = /^([0-9]{4}[\-]{1}[0-9]{7})$/;
    var mobile = /^(?:\([2-9]\d{2}\)\ ?|[2-9]\d{2}(?:\-?|\ ?))[2-9]\d{2}[- ]?\d{4}$/;
    if (landline.test(x))
alert('first condition');
        $('#phone1').css('border','2px solid #00a500');
    else if(mobile.test(x))
alert('second condition');
        $('#phone1').css('border','2px solid #00a500');
    else
        $('#phone1').css('border','2px solid #a50000');
alert('third condition');
}
</script>

<input type="text" value="" name="phone1" id="phone1" onchange="check_phone()" required />

輸入電話號碼后按Tab鍵時,它不會顯示來自check_phone()函數的警報框。 它甚至進入功能並進行檢查嗎? 它甚至沒有按照函數中提到的CSS設置文本框的樣式。 我怎么知道? 請幫忙

所有的if塊都沒有結尾括號( )並將它們放在花括號中

if (landline.test(x))
{
alert('first condition');
        $('#phone1').css('border','2px solid #00a500');
}
    else if(mobile.test(x))
{
alert('second condition');
        $('#phone1').css('border','2px solid #00a500');
}
    else
{
        $('#phone1').css('border','2px solid #a50000');
alert('third condition');
}

也改變

<input type="text" value="" name="phone1" id="phone1" onchange="check_phone()" required />

id ..你剛給名字

<input type="text" value="" name="phone1" id="phone1" onchange="check_phone()" required />

還為if()添加括號

 if (landline.test(x) {
alert('first condition');
        $('#phone1').css('border','2px solid #00a500');
}
    else if(mobile.test(x) {
alert('second condition');
        $('#phone1').css('border','2px solid #00a500');
}
    else{
        $('#phone1').css('border','2px solid #a50000');
alert('third condition');
}

您缺少每種情況的右括號( if (landline.test(x)且沒有{} ,它將僅執行警報行,而css樣式不會成為該條件的一部分,因此您應使用:

if (landline.test(x)) {
    alert('first condition');
    $('#phone1').css('border','2px solid #00a500');
}

在所有條件下。

並也更改下面的行,正如@arunrc指出的那樣,您需要提供id屬性才能從類似的代碼中訪問它。

<input type="text" value="" name="phone1" id="phone1" onchange="check_phone()" required />

您忘記了很多右括號和括號。 這是 jsfiddle上的一個working示例

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM