#jquery #validation
#jquery #проверка
Вопрос:
Я использую плагин проверки jQuery с WordPress для проверки моей страницы контактов. Я замечаю, что на странице контактов, где есть форма, нет ошибок Javascript в 2 браузерах, которые я тестировал (IE7 и Firefox 4 с Firebug). На другой странице, где загружен скрипт, но нет форм, Firebug сообщает:
jQuery («форма»).validate не является функцией
IE7 сообщает, что страница также содержит ошибки.
Это все, что у меня есть на данный момент:
jQuery(document).ready(function () {
jQuery("form").validate({
rules: {
contactName: "required",
email: {
required: true,
email: true
},
message: "required"
},
messages: {
name: "A valid name is required.",
email: "A valid email address is required.",
message: "A message is required."
},
errorPlacement: function(error, element) {
error.insertAfter( element.siblings("label") );
}
});
});
Я пытаюсь собрать все плагины jQuery вместе в одном файле вместо того, чтобы разделять их и загружать по отдельности. Почему это вызывает ошибку? Я даже пытался заменить «форму» на «#контакт».
Комментарии:
1. Можете ли вы дать нам ссылку на эту страницу? Я предполагаю, что вы загружаете плагины асинхронно, поэтому .ready() срабатывает до загрузки плагина validate.
Ответ №1:
Вы можете изменить проверку, чтобы сначала проверить существование элемента. Что-то вроде:
var $form = jQuery("form");
if ($form.length) {
$form.validate({
// your code
});
}