これらの検証ルールがあります:
$("#ed_details").validate({
rules: {
tagno: { required: true },
itemid: { required: true },
ralno: { required: true },
feet: { required: true, number: true, min: 0 },
inches: { required: true, number: true, min: 0 },
cms: { required: true, number: true, min: 0 },
length: { required: true, number: true, max: $('#maxlength').val() },
qty: { required: true }
}
});
これは lengths が検証するフィールドです。テスト用のテキストのみです。これが機能すると非表示になります。
<input type="text" name="maxlength" id="maxlength" value="<?=$maxL['ml']?>" />
これは、実行時に maxlength の値を変更しない限り (発生する可能性があります)、正常に機能します。ユーザーがドロップダウンから項目を選択しています。各アイテムには、使用できるチューブの最大長があります。アイテムが変更されると、画面上の maxlength の値が変更されます。ただし、検証を実行すると、元の長さに基づくエラー メッセージが表示されます (新しいアイテムの場合は 0、編集のロード時の最大長は何でも)。
Please enter a value less than or equal to 156.
maxlength フィールドに別の値が表示されている場合でも、これが表示されます。
フィールドで Firebug を使用すると、変更後も元の値が表示されます。また、コードではなく手動で maxlength フィールドを変更しても違いはありません。
どんな助けでも大歓迎です。