私はMVC3アプリケーションで控えめな検証を使用しています。あるフォームでは、かなり複雑な検証を行う必要があります。したがって、私は正規のjQueryのvalidateプラグインを使用できると考えました。カスタム検証スクリプトを使用しており、jQuery.validate.unobtrusive.js
への参照がページに含まれている場合、カスタム検証スクリプトは常に有効です!MicrosoftのjQuery Validate Unobtrusiveによって他のバリデータが検証をスキップします
テスト用のhtmlファイルを作成します(jquery.validate.js
,jquery.unobtrusive-ajax.js
、jquery.validate.unobtrusive.js
)。以下のフォームが提出されると、の検証チェックは行われません。スクリプト参照をjquery.validate.unobtrustive.js
に移動すると、スクリプト参照が再び機能します。これの周りに簡単な方法がありますか?
<!DOCTYPE html>
<html>
<head>
<title>Test Jquery</title>
<script type="text/javascript" src="http://ajax.aspnetcdn.com/ajax/jQuery/jquery-1.4.4.js"></script>
<script type="text/javascript" src="http://ajax.aspnetcdn.com/ajax/jquery.validate/1.7/jquery.validate.js"></script>
<script type="text/javascript" src="jquery.validate.js"></script>
<script type="text/javascript" src="jquery.unobtrusive-ajax.js"></script>
<script type="text/javascript" src="jquery.validate.unobtrusive.js"></script>
<script type="text/javascript">
$(function()
{
var result = $("#commentForm").validate({
rules:
{
name: "required",
email: {
required: true,
email: true
},
comment: "required"
}
});
});
</script>
</head>
<body>
<form id="commentForm" method="get" action="">
<fieldset>
<legend>A simple comment form with submit validation and default messages</legend>
<p>
<label for="cname">Name</label>
<em>*</em><input id="cname" name="name" size="25" />
</p>
<p>
<label for="cemail">E-Mail</label>
<em>*</em><input id="cemail" name="email" size="25" />
</p>
<p>
<label for="ccomment">Your comment</label>
<em>*</em><textarea id="ccomment" name="comment" cols="22"></textarea>
</p>
<p>
<input class="submit" type="submit" value="Submit" />
</p>
</fieldset>
</form>
</body>
</html>
ええ、2番目のインクルードはサンプルの間違いでした。私は 'IClientValidatable'ルートに行きます。ありがとう。 – TheCloudlessSky
親愛なるダーリン、私はIClientValidatableを使ってデータベースとの値をチェックできますか?名前のチェックなど、カスタム検証属性を持つデータベースに存在しますか? – lawphotog