/ / insertValidationMassage нокаут не работи - jquery, knockout.js, проверка на нокаут

insertValidationMessage нокаут не работи - jquery, knockout.js, knockout-validation

Използвам валидиране с нокаут, искам да покажа персонализирано съобщение от собствената си функция тук е моят код за валидиране на ко

  ko.validation.init({

// registerExtenders: true,
messagesOnModified: false,
insertMessages: true,
parseInputAttributes: true,
messageTemplate: null,
grouping: { deep: true, observable: true },
registerExtenders: true,
insertValidationMessage: function (element) {

var span = document.createElement("SPAN");
span.className = "validationMessage";

if ($(element).hasClass("error-before"))
element.parentNode.insertBefore(span, element);
else
element.parentNode.insertBefore(span, element.nextSibling);

return span;
}
});

но messagevalidationmessage не се нарича Am Аз правя нещо нередно

Отговори:

0 за отговор № 1

Най- init метод поддържа само преобладаващи конфигурационни свойства, така че ако искате да замените методите, трябва да го направите директно на ko.validation обект.

Така че вашият код за инициализация трябва да изглежда така:

ko.validation.init({
// registerExtenders: true,
messagesOnModified: false,
insertMessages: true,
parseInputAttributes: true,
messageTemplate: null,
grouping: { deep: true, observable: true },
registerExtenders: true
});

ko.validation.insertValidationMessage: function (element) {

var span = document.createElement("SPAN");
span.className = "validationMessage";

if ($(element).hasClass("error-before"))
element.parentNode.insertBefore(span, element);
else
element.parentNode.insertBefore(span, element.nextSibling);

return span;
}