7

Model クラスに次のコードがあります。

    [Range(1, 100)]
    public decimal Price { get; set; }

最近 jquery.validate を 1.11.0 にアップグレードした後 (私が推測)、有効な値を入力してもエラーが発生します。web.config でクライアント検証をオフにすると、正常に動作します。他のすべての属性 (StringLength、必須) は正常に機能します。生成された HTML は次のとおりです (わかりやすくするために改行が追加されています)。

<input class="text-box single-line" data-val="true" 
data-val-number="The field Price must be a number." 
data-val-range="The field Price must be between 1 and 100." 
data-val-range-max="100" data-val-range-min="1" 
data-val-required="The Price field is required." id="Price" name="Price" 
type="text" value="" />

以前は機能していたと確信しています... jquery.validateのバグ以外は考えられません。

4

4 に答える 4

1

Microsoft は、microsoft.jQuery.Unobtrusive.Ajax および microsoft.jQuery.Unobtrusive.Validation (バージョン '2.0.20710.0' から '2.0.30116.0' へ) に対して、 .live と検証の問題の両方を修正する更新プログラムを発行しました。

于 2013-02-18T23:55:55.773 に答える
0

これは、Jquery のバージョンを更新し、Jquery の新しいバージョンにはさまざまな新しい更新があり、.live などの一部の機能が削除され、.on に置き換えられたために発生します。

それを通り抜けて...

http://jquery.com/upgrade-guide/1.9/#live-removed

于 2013-02-15T06:47:56.397 に答える