根据点击的按钮,我需要一些字段。我所看到的行为并不是我所期望的,也不是我想要的。当我单击其中一个按钮时,它会按照我的意愿设置所需的字段,但如果我单击另一个按钮,则由于某种原因它不会重置它们。
代码如下。感谢您提供的任何帮助:
function makeAllRequired() {
$("#SomeForm").validate({
rules: {
StartDate: {
required: true,
date: true
},
Name: {
required: true
}
},
errorElement: "div"
});
}
function makeSomeRequired() {
$("#SomeForm").validate({
rules: {
StartDate: {
required: true,
date: true
}
},
errorElement: "div"
});
}
$(document).ready(function () {
$("#SomeButtonOne").click(function () {
makeAllRequired();
$("#SomeForm").attr("action", "/here/there");
$("#SomeForm").submit();
});
$("#SomeButtonTwo").click(function () {
makeSomeRequired();
$("#SomeForm").attr("action", "/here/elsewhere");
$("#SomeForm").submit();
});
});
答案 0 :(得分:1)
在设置新的必填项目之前,请尝试重置表单:http://docs.jquery.com/Plugins/Validation/Validator/resetForm
答案 1 :(得分:0)
我不是百分百确定,但在应用新规则之前先尝试删除规则
function makeAllRequired() {
$("#SomeForm").rules("remove");
$("#SomeForm").validate({
rules: {
StartDate: {
required: true,
date: true
},
Name: {
required: true
}
},
errorElement: "div"
});
}
function makeSomeRequired() {
$("#SomeForm").rules("remove");
$("#SomeForm").validate({
rules: {
StartDate: {
required: true,
date: true
}
},
errorElement: "div"
});
}