Это потому, что вы также дали класс оболочке внутри элемента error, так что:
wrapper: "div class=\"message\"",
Должно быть просто:
wrapper: "div",
Тогда он не добавляет его в верхний контейнер и элементов, которые он там создает. Вы можете попробовать здесь .
Вышеуказанное работает, но лучшим решением является использование предполагаемого свойства errorLabelContainer
, которое также отображается / скрывается автоматически, если есть / нет ошибок, например:
$(function(){
$("#siteauth").validate({
rules: {
shortdescription: "required",
sourceurl: "required"
},
messages: {
shortdescription: "Enter a short description. ",
sourceurl: "Enter a Source URL. "
},
errorElement: "div",
wrapper: "div",
errorLabelContainer: ".message"
});
});
Попробуйте эту версию здесь .