Как исправить ошибку позиционирования с помощью jQuery Validation Engine и модальных окон Twitter Bootstrap

Я использую Twitter Bootstrap 2.1.0 на своем сайте, я также использую плагин jQuery Validation Engine 2.6.2, которые хорошо работают вместе.

Пока вы не попытаетесь использовать механизм проверки в модальном режиме:

Обратите внимание, как мы получаем горизонтальную полосу прокрутки, а сообщение обрезается?

Мне интересно, что я могу сделать, чтобы исправить это?


person Hailwood    schedule 28.01.2013    source источник
comment
не забудьте отметить как ответ ... спасибо!   -  person qdev    schedule 22.09.2014
comment
Это ответ stackoverflow.com/a/15336860/114558   -  person rinogo    schedule 13.04.2019


Ответы (3)


Вы можете установить позицию по умолчанию для сообщений об ошибках, когда вы создаете/обновляете validationEngine, которая будет применяться ко всем вашим проверенным полям:

$("#formID1").validationEngine({promptPosition : "topRight:-100"});

и/или настроить индивидуальные настройки позиции для каждого из ваших полей:

<input type="text" class="validate[required]" data-prompt-position="bottomRight:-100" />
person qdev    schedule 11.03.2013
comment
Кстати, я думаю, что это просто bottomRight, а не bottomRight:-100. см. этот пример. - person rinogo; 13.04.2019
comment
Позиция подсказки @rinogo может быть простой строкой (указывающей позицию), но также может содержать смещение от этой позиции, точно так же, как я указал в моем примере выше, это означает -100 пикселей снизу справа;) См. здесь: posabsolute.github.io/jQuery-Validation-Engine/ - person qdev; 15.04.2019
comment
Спасибо за ссылку! Я просто работал с источником в своем приложении. Должно быть, я использую устаревшую версию плагина; возможно, этот совет поможет тем, кто, как и я, работает над устаревшими приложениями. - person rinogo; 15.04.2019

Найдите приведенный ниже код в jquery.validationEngine.js.

 if (options.isOverflown)
     field.before(prompt);
 else
     $("body").append(prompt);

заменить его на

 //if (options.isOverflown)
     field.before(prompt);
 //else
     //$("body").append(prompt);
person Nasir Javed    schedule 04.06.2015

person    schedule
comment
Почему ОП должен попробовать это? Пожалуйста, добавьте объяснение того, что вы сделали и почему вы сделали это не только для OP, но и для будущих посетителей SO. - person Jay Blanchard; 24.03.2015