Вход

Просмотр полной версии : jquery маска в модальном окне ajax


psfdek
25.06.2014, 00:25
Использую jquery маску для инпутов, файл маски подключен в родительской пхп файле например control.php с помощью require (Рис 1) где так же находится ссылка для вывода модального окна.
И так же подключен код вывода модального окна.

http://s020.radikal.ru/i721/1406/f2/02d5630708ce.png
Рис 1 - файл control.php

Все инпуты которые обрабатываются в модальном окне находятся в отдельном файле который запрашивается в него с помощью ajax.
При открытии control.php и первом нажатии на кнопку "Добавить работника" все работает нормально. (Рис 2)

http://s020.radikal.ru/i705/1406/ba/1d780bbbc26a.png
Рис 2 - Модальное окно открытое по ссылке в 1 раз

Но при открытии во 2 раз, без перезагрузки страницы уже не работает (Рис 3)

http://s016.radikal.ru/i334/1406/01/45baa0a8d6ce.png
Рис 3 - Модальное окно открытое по ссылке в 2 раз

Что может быть не так?

krasovsky
25.06.2014, 08:30
Навешивай свою маску в момент открытия модального окна

psfdek
25.06.2014, 14:10
как?

krasovsky
25.06.2014, 14:50
как?
Что значит как? Так же как сейчас, но не сразу а когда диалог открываешь. Я ж не знаю какой там у тебя диалог,или плагин это или что, как открывается. Тебе лучше знать.

psfdek
25.06.2014, 16:15
http://learn.javascript.ru/play/TFjcoc
я не могу починить это :(
Вот в песочнице так же не пашет.
Точнее в первый раз нажмете на "Добавить работника" - всё работает (маска в инпуте есть), а если нажать закрыть модальное окно и снова кнопку "Добавить работника" то уже не пашет. Хз как так вообще.

Brutus
25.06.2014, 16:33
http://learn.javascript.ru/play/6qJ39

psfdek
25.06.2014, 16:49
Что Вы поменяли? :)

Brutus
25.06.2014, 16:51
jQuery(function($) {
$.mask.definitions['~']='[+-]';
$('#date').mask('99/99/9999');
$('#phone').mask('(999) 999-9999');
$('#phoneext').mask("(999) 999-9999? x99999");
$("#tin").mask("99-9999999");
$("#ssn").mask("999-99-9999");
$("#product").mask("a*-999-a999");
$("#eyescript").mask("~9.99 ~9.99 999");
});
это перенес в
function displayMessage(url,cssClass)
{
messageObj.setSource(url);
messageObj.setCssClassMessageBox(cssClass);
messageObj.setSize(300,300); // размеры окна. Если эту строку удалить, будут поставлены занчения по умолчанию - 400х200
messageObj.setShadowDivVisible(true); //Включить(true)/Выключить (false) тень
messageObj.display();
}