2009-04-08 6 views
0

私のページにTextBoxがあります。このテキストボックスを検証したいと思います。jqueryとregex

のルールは以下のとおりです。

  1. のTextBoxが20以上の文字
  2. のみaphanumericや文字などを取得するべきではありません/ - #jqueryのを使用して行う方法

を許可する& ^スペース最良の方法で

答えて

1

適切な正規表現は次のようになります。

^[a-zA-Z0-9/#&^\- ]{0,20}$

A-Zが正しいかどうか自問してください。あなたはそれ以上のもの(アクセント記号付きの文字など)を許可したいかもしれません。

広範な許容入力に対して正規表現を使用するには、JavaScript Unicode Block Range Creatorを使用します。手書きで許可された文字を確認してくださいJavascript RegExp Unicode Character Class Tester

いつものように、サーバー側でフォームの値を二重にチェックしてください。すべての入力チェックを行うためにJavaScriptに依存することは危険です。 jQueryのため

the Valitator pluginを見て、の線に沿ってコードを使用する:

$.validator.addMethod(
    "yourFormField", 
    function(value) { 
    return /^[a-zA-Z0-9/#&^\- ]{0,20}$/.test(value); 
    }, 
    "Please enter a valid value." 
); 
+0

ありがとうございます。ユーザータイプとして検証をチェックすることは可能ですか?私自身のjqueryだけでプラグインを使わなくてもいいですか?もちろん、 – KJai

+0

。プラグインは単なる提案に過ぎませんでした。あなたが好きな方法で正規表現を使用してください。しかし、タイプされているすべての文字をチェックすることはお勧めしませんが、フォームフィールドがフォーカスを失ったときには一度だけチェックします。 – Tomalak

+0

Plzはプラグインなしでバリデーションを行う方法を教えています。例は非常に良いです。jqueryの最初の日として考えてみましょう – KJai

0

^[-ZA-Z0-9 /#&^- ] {0,20} $