2

この検証プラグインを使用しています: https://github.com/posabsolute/jQuery-Validation-Engine

私が持っている電子メール入力フィールドは、それが実際の電子メールであるかどうかを検証し、特定の電子メール ドメイン (hotmail、gmail) を許可しない必要があります。プラグインの Web サイトの readme 全体を読みましたが、これを行う方法について役立つ情報は何もありません。誰かがそれを行う方法を知っているか、方法に関するドキュメントへのリンクを持っている場合、あなたの人生をより安全にするでしょう.

前もって感謝します。

4

1 に答える 1

2

次のことを提案できます(これはテストしていませんので、機能しない場合はお知らせください)。

このプラグインを使用すると、検証用のカスタム正規表現を指定できます。すべての正規表現は、いわゆるtranslation filejquery.validationEngine-en.js英語の場合)に配置されます。そこに$.validationEngineLanguage.allRulesオブジェクトが表示されます。独自の正規表現を禁止するように設定する必要があるカスタムルール(Gmail、Hotmailなど)を追加します。

"custom_email": {
     "regex": /^[a-zA-Z0-9.!#$%&'*+/=?^_`{|}~-]+@(?!gmail\.com|hotmail\.com)[a-zA-Z0-9-]+(?:\.[a-zA-Z0-9-]+)*$/,
     "alertText": "* Invalid email address"
}, 

ルールで指定されたほぼデフォルトの正規表現を追加したことがわかりますが、"email"それに否定的な先読みが含まれてい(?!gmail\.com|hotmail.com)ます(アプローチを使用して別のドメインを追加できます|newemail\.com)。

次に、入力に対して次のカスタムルールを設定する必要があります。

<input value="" class="validate[custom[custom_email]]" type="text" name="email" id="email" />
于 2012-09-18T10:48:27.540 に答える