2016-12-14 66 views
0

我知道我可以用下面的代碼來做到這一點。但是,它不允許我在文本字段中輸入印地文或馬拉地語字符。jQuery驗證 - 如何限制用戶在文本字段中輸入數字和特殊字符?

jQuery.validator.addMethod("lettersonly", function(value, element) { 
     var regex = new RegExp("^[a-zA-Z]+$"); 
     var key = value; 

     if (!regex.test(key)) { 
      return false; 
     } 
     return true; 
    }, "please use only alphabetic characters"); 

基本上,想法是讓用戶只輸入文本(不包括數字和特殊字符),文本可以在馬拉或印地文或英文。

回答

0

印地文/ marathi char是unicodes。在這種情況下,檢查號碼或特殊字符之前,你可以檢查它是否unicodes條目。

如果爲true,則跳過檢查號碼驗證。

下面的代碼片斷你可以用它來獲取每個字符的長度:

function getCharByteLen(char) { 

var byteLen=0; 
    var c = char.charCodeAt(0); 
    byteLen += c < (1 << 7) ? 1 : 
       c < (1 << 11) ? 2 : 
       c < (1 << 16) ? 3 : 
       c < (1 << 21) ? 4 : 
       c < (1 << 26) ? 5 : 
       c < (1 << 31) ? 6 : Number.NaN; 

return byteLen; 

}

0

你可以明確地對特殊字符進行搜索。

var regex = new RegExp("[.,\/#!$%\^&\*;:{}=\-_`~()0-9]+$"); 
+0

它也不允許大寫字母,例如ABCD。否則它工作正常。 – ashishjmeshram

相關問題