フォームの検証に jquery validation plugin を使用しています。 min
プロパティの使用は問題なく機能しますが、その最小値よりも厳密に大きい値を検証する必要があります。
rules: {
price: {
required: true,
min: 13,
number: true
}
}
私のコードではmin: 13
ですが、13は許可しません。13より大きい値のみを許可します。たとえば、 13.10、13.20、14。これを行うにはどうすればよいですか?
前もって感謝します !
$.validator.addMethod
を使用して独自のカスタムメソッドを作成します。
$.validator.addMethod('minStrict', function (value, el, param) {
return value > param;
});
次に使用します:
price: {
required: true,
minStrict: 13,
number: true
}
注:バリデータプラグインの作成者 推奨 指定した値にNumber.MIN_VALUE
を追加します。
min: 13 + Number.MIN_VALUE
Number.MIN_VALUE
は、JSが処理できる正の(ゼロ以外の)最小の浮動小数点数であるため、以下の2つのステートメントは同等です。
a > b;
a >= b + Number.MIN_VALUE;
しかし、これは、浮動小数点数がメモリに格納される方法が原因で機能しません。丸めにより、ほとんどの場合b + Number.MIN_VALUE
はb
に等しくなります(これが機能するには、b
が非常に小さいである必要があります)。