Я пытаюсь использовать плагин проверки Jquery для проверки моей формы. У меня есть сообщения об ошибках справа от большинства моих элементов ввода, но переключатели не дают мне ничего, кроме неприятностей.
Если я не указываю ширину для класса div.group, сообщение об ошибке появляется на внешней стороне полной страницы (так как я предполагаю, что ширина div равна 100% страницы?) Если ничего не сделать, ошибка будет сообщение появится после первого переключателя вместо второго. Я не могу жестко закодировать ширину, так как я хочу использовать ее в радиогруппах различной ширины. Как мне сделать так, чтобы он отображался у правого края везде, где заканчиваются радиокнопки в радиокнопках?
Спасибо!
var validator = $("#myForm").validate({
errorElement: "div",
wrapper: "div", // a wrapper around the error message
errorPlacement: function(error, element) {
if (element.parent().hasClass('group')){
element = element.parent();
}
offset = element.offset();
error.insertBefore(element)
error.addClass('message'); // add a class to the wrapper
error.css('position', 'absolute');
error.css('left', offset.left + element.outerWidth());
error.css('top', offset.top);
}
});
А потом
<p>
<div class="group">
<label>Gender</label>
Male: <input id="gender_male" type="radio" name="gender" class="required" value="Male" />
Female: <input id="gender_female" type="radio" name="gender" class="required" value="Female" />
</div>
Может быть, просто так, чтобы сообщение об ошибке появилось после последнего переключателя в группе? Если бы я мог получить указатель на последний элемент, я мог бы соответственно изменить смещение.
РЕДАКТИРОВАТЬ: Ага, я просто использовал div.group {display: inline-block;}.