0
Я пытаюсь использовать обработчик привязки с Knockout и jQuery Validate, но когда я отправляю форму, перезагрузка страницы не проверяет и не вызывает метод в моей модели представления.Knockout jQuery Validate binding Handler
Может ли кто-нибудь сказать мне, что я пропущу, пожалуйста?
Вот мой связывании
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_ методом плагина и получает вызов _once_ в событии готовности DOM. В этот момент проверка выполняется автоматически с помощью различных событий мыши. – Sparky
Обновление используется для применения плагинов jquery или добавления к элементу после того, как Knockout выполнил его привязку. Это связывание позволяет мне добавить простой атрибут в мою форму data-bind = "validateEmailForm: {}", который будет автоматически запускать обновляемый код после завершения привязки. –