2012-03-17 79 views
0

我想檢查文本字段是否有超過21個字符。如果它有超過21個字符,則顯示錯誤消息。下面的代碼顯示了我迄今爲止的成就。一切正常,但我堅持這個小問題。我怎麼解決這個問題?檢查值是否超過21個字符

$('input[name="textfield-googleplus"]').keyup(function() { 
    $('.input-error').remove(); 

    var input_value = $(this).val(); 
    var only_numeric = /^\d*[0-9](|.\d*[0-9]|,\d*[0-9])?$/; 
    var max_twentyone = /[0-9]{21}/; 


    if(input_value != '' && !only_numeric.test(input_value)) { 
     $(this).after('<span class="input-error">Ditt profil-ID får enbart innehålla siffror</span>'); 

    } else if(input_value != '' && !max_twentyone.test(input_value)) { 
     $(this).after('<span class="input-error">Ditt profil-ID får enbart innehålla 21 siffror</span>'); 
    } 
}); 

在此先感謝!

+0

我不知道怎麼樣'$(本).VAL()。長度<= 21'你什麼使用正則表達式檢查是否在字符串中存在完全21位數的子字符串(^和$ mean表示以開始並結束於)。但是你當然也可以重寫正則表達式,因此它支持所有其他字符。 – 2012-03-17 03:22:42

回答

6

正則表達式在這裏沒有必要。只需檢查(input_value.length > 21)

+0

非常感謝!你的答案解決了我的整個問題:)我會盡快標記它。 – Erik 2012-03-17 03:27:45

2
if (typeof input_value == "string") { 
    if (input_value.length > 21) { // is more than 21 chars 

    } 
} 

我只有通過第一,如果因爲如果你想要的是永遠是字符串

相關問題