2016-07-22 91 views
0


我需要jquery.validate插件的自定義驗證方法,它允許我只鍵入字母和特殊字符,如üõöä。

現在我有一個自定義方法,它允許我只鍵入沒有特殊字符的字母。jQuery驗證非英文字母

jQuery.validator.addMethod("letters", function(value, element) 
{ 
    return this.optional(element) || /^[a-z ]+$/i.test(value); 
}, "Please enter a letters only."); 
+0

是否已進行了在寫一個新的正則表達式的嘗試嗎? – Sparky

+0

我對正則表達式不熟悉)) – anton

+0

因此,您應該對所詢問的主題有基本的瞭解,並且已經嘗試自己解決這個問題。謝謝。 – Sparky

回答

1

爲了測試英語和非英語字母,你可以用這個表達式:

([^\x00-\x7F]|[a-zA-Z]) 

它將測試對於未在A-ZA-Z或範圍信該範圍內的字母。
這是jQuery的驗證中:

jQuery.validator.addMethod("letters", function(value, element) 
{ 
    return this.optional(element) || /^([^\x00-\x7F]|[a-zA-Z])+$/i.test(value); 
}, "Please enter a letters only."); 

另一種選擇 - 如果你想使用允許一組特定的字符到:

jQuery.validator.addMethod("letters", function(value, element) 
{ 
    return this.optional(element) || /^([a-zA-ZÆÐƎƏƐƔIJŊŒẞÞǷȜæðǝəɛɣijŋœĸſßþƿȝĄƁÇĐƊĘĦĮƘŁØƠŞȘŢȚŦŲƯY̨Ƴąɓçđɗęħįƙłøơşșţțŧųưy̨ƴÁÀÂÄǍĂĀÃÅǺĄÆǼǢƁĆĊĈČÇĎḌĐƊÐÉÈĖÊËĚĔĒĘẸƎƏƐĠĜǦĞĢƔáàâäǎăāãåǻąæǽǣɓćċĉčçďḍđɗðéèėêëěĕēęẹǝəɛġĝǧğģɣĤḤĦIÍÌİÎÏǏĬĪĨĮỊIJĴĶƘĹĻŁĽĿNŃN̈ŇÑŅŊÓÒÔÖǑŎŌÕŐỌØǾƠŒĥḥħıíìiîïǐĭīĩįịijĵķƙĸĺļłľŀʼnńn̈ňñņŋóòôöǒŏōõőọøǿơœŔŘŖŚŜŠŞȘṢẞŤŢṬŦÞÚÙÛÜǓŬŪŨŰŮŲỤƯẂẀŴẄǷÝỲŶŸȲỸƳŹŻŽẒŕřŗſśŝšşșṣßťţṭŧþúùûüǔŭūũűůųụưẃẁŵẅƿýỳŷÿȳỹƴźżžẓ])+$/i.test(value); 
}, "Please enter a letters only."); 
+0

謝謝!第三個選項適用於我) – anton