こんにちは、jquery 検証プラグインを使用してフォームを検証しています。検証にルールをもう 1 つ追加したいのですが、うまくいきません。 入力値は前の要素の値以下である必要があります。
それは可能ですか?
ここにコードがあります -
<input type='text' value='<?php echo $count; ?>' class='input_in_stock' readonly="readonly" />
<input type='text' name='amount[]' id='<?php echo rand(0,99).$id; ?>' size='1' value='<?php echo $count; ?>' class='required input_count' />
$(document).ready(function(){
$.validator.addMethod('positiveint', function (value) {
return (value > 0) && (value != 0) && (value == parseInt(value, 10));
}, 'Enter a positive integer value.');
$.validator.addMethod('notmorethan', function (value) {
return (value <= $(this).prev().val());
}, 'abc.');
$("#cartform").validate({
rules: {
"amount[]": {
required: true,
positiveint: true,
notmorethan: true
}
},
errorPlacement: function(error, element) {
error.appendTo(element.next());
}
});
});
ps このjquery検証プラグインの修正を使用して、次のような名前で機能するようにしました[] http://www.codeboss.in/web-funda/2009/05/27/jquery-validation-for-array-of-input-要素
編集:解決策を見つけました
$.validator.addMethod('notmorethan', function (value, element) {
return (value <= $(element).prev().val() );
}, 'abc');