0

私はこのような単純なフォームを持っていますが、これは2つの値の文字列アクションとeditTextを受け付けます。データアノテーションなしで控えめなクライアント検証を有効にする方法はありますか?または、モデルを受け入れてデータアノテーションを使用する必要がありますか?私はそれが必要なのは、editTextが少なくとも5文字長いことを確認することです。モデルを受け入れない控えめなクライアント検証

@using (Ajax.BeginForm("Action", "Controller", null, new AjaxOptions { OnFailure = "error", UpdateTargetId = "Pcedit" + @Model.ID})) 
    {         
    <textarea rows="3" cols="2" name="editText" style="width:100%;"></textarea> 
    <br /> 
    <input type="submit" name="action" value="Save"/> 
    <input type="submit" name="action" value="Cancel"/> 
    } 

答えて

1

控えめなクライアントの検証では、jquery.validateを使用しています。そのため、javascriptを使用してクライアント上で直接呼び出すだけです。以下のような何か:

$("#myform").validate({ 
    rules: { 
    editText: { 
     required: true, 
     minlength: 5 
    } 
    } 
}); 

http://docs.jquery.com/Plugins/Validation/Methods/minlength

+0

動作しますありがとう! – formatc

+1

しかし、目立たない検証は使用しません。ビューをバッキングモデルから分離します。このようにして、純粋なjavascript検証を実装しています。 mvcによる目立たない検証では、検証プロパティーを一度定義するだけで済み、クライアント側とサーバー側の両方の検証で使用されます。これでクライアント側のみが使用できるようになりました。サーバーの検証は別途行う必要があります。 –

+0

私はあなたがこれをどのように働かせるか知りたいです。 $( "form")。validate()をいくつかのルールで追加することは私にとっては全く無視されます。邪魔にならないように見えますが、純粋なjQueryクライアントの検証ルールをそこに混在させることはできません。 –

関連する問題