jQuery プラグインを使用して検証を行う方法を示す本をたくさん持っていますが、私が取り組んでいるプロジェクトでは、型にはまらないアプローチが必要です。
以下のサンプル コードでは、各エラー メッセージ ホルダーに ID を追加しました。これは、各メッセージを個別に呼び出したいためです。特定のアイテムでエラーが発生した場合は、タグを削除し、 (可能であれば) Leave イベントでタグを呼び出して、メッセージ全体を非表示にする必要があります。
例として、次の jQuery を作成しました。したがって、検証プラグインを使用してエラー メッセージを生成する代わりに、 show show the message on leave eventを実行するだけで済みます。
説明のために:
<script type="text/javascript">
$(document).ready(function(){
$('#signup').validate({
rules: {
txtUserName: {
required: true,
txtUserName: true
}
},
messages: {
txtUserName: {
required: "Please supply your e-mail address.",
txtUserName: "This is not a valid e-mail address."
}
}
});
});
</script>
これは基本的なフォームの例です:
<form action="/" method="post" id="signup">
<ul>
<li>
<p id="flgUserName">Hide on page load but show on error</p>
<input name="txtUserName" id="txtUserName" type="text" class="required">
<label for="txtUserName">Username:</label>
</li>
<li>
<p id="flgEmail">Hide on page load but show on error</p>
<input name="txtEmail" id="txtEmail" type="text" class="required">
<label for="txtEmail">E-mail:</label>
</li>
<li>
<input type="submit" name="submit" value="Submit">
</li>
</ul>
</form>