0
我想用Knockout和jQuery验证使用绑定处理程序,但是当我提交表单时,页面重新加载,不验证并且不会在我的视图模型上调用该方法。Knockout jQuery验证绑定处理程序
有人能告诉我我错过了什么吗?
这里是我结合
ko.bindingHandlers.validateEmailForm = {
update: function(element, valueAccessor, allBindingsAccessor, viewModel, bindingContext) {
$(element).validate({
errorLabelContainer: $("#updateEmailFormAlert"),
wrapper: 'li',
rules: {
email: {
required: true,
email: true
},
emailConfirm: {
email: true,
equalTo: "#email",
}
},
messages: {
email: {
required: "Email is required",
email: "Please enter a valid email address"
},
emailConfirm: {
required: "Confirm Email is required",
email: "Please enter a valid confirm email address",
equalTo: "Confirm Email must match Email"
}
},
submitHandler: function() {
viewModel.updateUserEmail();
}
});
}
};
我不熟悉淘汰赛; 'update:'应该是什么?如果它对你有帮助,请记住'.validate()'是插件的_initialization_方法,并在DOM就绪事件中被调用_once_。此时验证是由各种鼠标事件自动触发的。 – Sparky
更新用于在Knockout完成绑定之后应用jquery插件或添加到元素。该绑定允许我将一个简单的属性添加到我的表单data-bind =“validateEmailForm:{}”中,一旦绑定完成,它将自动运行更新中的代码。 –