我有以下这些验证规则:
$("#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 }
}
});
这是长度验证的字段。它只是用于测试目的的文本。一旦工作正常,它将被隐藏。
<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字段而不是代码也没有任何区别。需要帮助,非常感激。
onkeyup
、onfocusout
和onsubmit
上。那么错误消息会弹出吗? - Sparky