jquery.validate.unobtrusive.jsでjQueryValidationPlugin、v1.11.0、2/4/2013を使用しています。
数値フィールドの範囲検証のバグに直面していると思います。検証では、フィールドの数を最小数および最大数と比較するのではなく、文字列値を最小の文字列および最大の文字列と比較します。
再現ステップ:
次のHTMLを使用して、検証範囲を1〜1000に設定します。
<input name="Data.MaxConcurrentInstances" class="text-box single-line" id="Data_MaxConcurrentInstances" type="number" value="" data-val-number="The field Max concurrent instances must be a number." data-val="true" data-val-range-min="1" data-val-range-max="1000" data-val-range="The field Max concurrent instances must be between 1 and 1000.">
テストフィールドの値を7に設定します。
期待される結果:検証に成功しました。エラーはありません。
実際の結果:検証は失敗します。内部的な理由:アルファベット順に文字列「7」が文字列「1」と「1000」の間にあり、それらの間ではないため、失敗します。
質問:このバグはわかっていますか?そのための最良の回避策は何ですか?