Как говорится в заголовке, у меня возникают проблемы с JQuery Ненавязчивая проверка в javascript в приложении MVC.JQuery Ненавязчивая проверка не срабатывает в MVC
То, что я сделал:
Входы на моей форме были связаны с соответствующими правилами, которые будут проверены в моем обычае JavaScript:
<input type="text" class="form-control" name="rates_taxes" id="rates_taxes" data-val='true' data-val-ispositive="You must enter a positive value here or 0" data-val-isnumeric="You must enter a numerical value here. (e.g 250000)" required>
...
jQuery.validator.addMethod('isnumeric', function (value) {
return $.isNumeric(value);
}, '');
jQuery.validator.unobtrusive.adapters.add('isnumeric', function (options) {
options.rules['isnumeric'] = {};
options.messages['isnumeric'] = options.message;
});
не показано здесь, я испытал, что IsNumeric метод вводится, когда пользователь вводит ввод или передает форму.
Вопрос - это представление формы. Два события, InvalidHandler и SubmitHandler просто не срабатывают.
Я реализовал ее с помощью метода на JQuery Validation сайте -, проходящий в обработчиках в качестве объекта Javascript для метода $("form").validate({ invalidHander: function(e, validator){ ... });
- это не выпалить
теперь у меня есть такой подход:
$(document).on("click", "button[type='submit']", function (e) {
if ($(e.target).data("customValidate") === true) {
e.preventDefault();
var form = $(e.target).parents("form");
$(form).data("validator").settings.submitHandler = function (formhandler) {
alert('submit');
formhandler.submit();
}; // <----
$(form).data("validator").settings.invalidHandler = function (e, validator) {
alert('error');
for (var i = 0; i < validator.errorList.length; i++) {
var element = '#' + validator.errorList[i].element.name;
var error = validator.errorList[i].message;
if (!error || error === "undefined") {
error = "This field is required.";
}
$(element).prop('title', error);
$(element).data('placement', 'right');
$(element).data('toggle', 'tooltip').tooltip('show');
}
}; // <----
$(form).validate();
}
});
который непосредственно устанавливает неверные и действительные обработчики для механизма проверки ненадежности JQuery в данных формы.
Ни один подход не работает. Я работал над другим сайтом MVC с моей командой до того, как работал этот подход, хотя я не реализовал ненавязчивую проверку - поэтому причина, по которой это не работает, как я реализовал выше, ускользает от меня.
Любые предложения по поводу того, что я, возможно, пропустил?
Немного неуместно - прежде чем я попытался использовать эти подходы (что имеет смысл быть правильным), я только проверил список ошибок для записей. в первый раз я отправлю форму, хотя поля были ошибочными, список ошибок был пуст. сразу же отправив форму во второй раз, она была заполнена и всплывающие подсказки в отображаемом коде – Eon