我已经开始使用jQuery Validation插件1.7。
我有一个类似于界面的向导,可以收集多个视图模型类的输入。每次用户点击NEXT / PREVIOUS按钮时,我都会尝试验证步骤中显示的每个对象。
我的jquery代码就像这个
$w.bind("jwizardchangestep", function (event, ui) {
if (ui.type !== "manual") {
var $currentStep = $w.find(".jw-step:eq(" + ui.currentStepIndex + ")");
var $inputs = $currentStep.find("input:text");
if ($inputs.length > 0 && !$inputs.valid()) {
$currentStep.find("label.error").effect("highlight");
return false;
}
}
});
其中$inputs
包含对页面中所有输入框的引用。
无论如何,函数$inputs.valid()
总是返回true
,即使输入元素根本没有被填充。我怀疑我在另一个jQuery调用中指定的验证规则出了问题,比如这个
$("#registerForm").validate({
rules: {
Firm_Name: "required",
Firm_StreetAddress: "required",
Firm_ZipCode: "required",
Firm_City: "required"
}
});
这是输入框的示例标记代码
<input id="Firm_Name" name="Firm.Name" style="width: 460px;" type="text" value="" class="ui-widget-content">
答案 0 :(得分:1)
尝试使用名称
$("#registerForm").validate({
rules: {
Firm.Name: "required",
Firm.StreetAddress: "required",
Firm.ZipCode: "required",
Firm.City: "required"
}
});
答案 1 :(得分:0)
我使用元数据中的规则。
似乎是电话
$("#registerForm").validate({
rules: {
Firm_Name: "required",
Firm_StreetAddress: "required",
Firm_ZipCode: "required",
Firm_City: "required"
}
});
将设置要在提交时检查的规则,这不是我想要做的,因为我想在下一次按钮点击时验证每个向导。
将元数据中的规则用作
<input id="Firm_Name" name="Firm.Name"
style="width: 460px;" type="text" value=""
class="required ui-widget-content">
效果很好。谢谢大家的帮助