2012-05-06 10 views
2

私は、ビューで、次の形式を持つ:MVC3アプリケーションでKendo DropDownListを使用した場合のクライアント検証の変更点は?

@using (Html.BeginForm()) 
{ 
    @Html.DropDownListFor(m => m.ModelValue, Model.ModelSelectList, " - ", new {@class = "kendo-skip-dropdown"}) 
    @Html.ValidationMessageFor(m => m.ModelValue) 
    <input type="submit" /> 
} 

私も剣道DropDownListコントロールなど、すべての私のselect要素ウィジェットのスタイルを、_Layout.cshtmlの私のページの読み込みコードで呼び出し$("select").not(".kendo-skip-dropdown").kendoDropDownList();を持っています。

ModelValue == nullが適用され、kendo-skip-dropdownクラスが適用されている場合、ドロップダウンは死んでおり、値を選択せず​​に投稿をしようとすると、予想される「フィールドは必須」クライアント側エラーが発生します。 kendo-skip-dropdownクラスを削除して剣道UIにその仕事をさせ、値を選択せず​​に投稿をしようとすると、クライアント側のエラーである「数字でなければならない」というエラーが表示され、optionLabelのデフォルト値が受け入れられるようになりました。ここでは異なる可能性がどのような

<span tabindex="0" style="" class="k-widget k-dropdown k-header"><span class="k-dropdown-wrap k-state-default k-state-hover"><span class="k-input">-</span> 
    <span class="k-select"><span class="k-icon k-arrow-down">select</span></span></span> 
    <select data-val="true" data-val-number="The field ModelValue must be a number." data-val-required="The ModelValue field is required." id="ModelValue" 
     name="ModelValue" style="display: none;" class="input-validation-error"> 
     <option>-</option> 
     <option value="1">One</option> 
     <option value="2">Two</option> 
     <option value="3">Three</option> 
     <option value="4">Four</option> 
    </select></span> 

、と誰もがどのようにリストを選択する非剣道と剣道の間で一貫性のある私の検証を保つために私に言うことができます。

私は剣道を使用するときにドロップダウンのためにレンダリングされたHTMLはありますか?

答えて

0

個人的には、私は大部分の検証のためにデータアノテーションを使用しています。私は標準バリデーターと剣道のバリデーターの違いを深く掘り下げる必要はありませんでしたが、[必須]とそのような属性を使用しなければなりませんでした。

まだdocumentationを見ましたか?それは、標準と剣道の種類の違いによって、剣道の標準とは違う順番で適用されるかもしれません。(剣道では最初に必要なものをチェックし、標準では数値が最初にチェックします)

一貫性は、常に剣道検証ツールを使用することです。または、標準のValidationMessageが2つの間で矛盾しないようにヘルパーをオーバーライドすることができます。

関連する問題