nizhnyk 0 Опубликовано: 26 декабря 2012 Рассказать Опубликовано: 26 декабря 2012 Наткнулся на проблему с хешем всплывающих окон. Этому наверняка есть простое решение типа переменной которой сбрасывается состояние окна, но я не нашел. Вот мой код и что я хочу реализовать: $('#repplus').dialog({ autoOpen: false, show: 'fade', hide: 'fade', width: 560, height: 500, dialogClass: 'modalfixed', buttons: { "Закрыть" : function() { $(this).dialog("close"); }, "Отправить": function() { document.getElementById("addrepplusframe").contentWindow.document.getElementById("addrepform").submit(); $(this).dialog({ buttons: { "Закрыть" : function() { $(this).dialog("close"); }, "Вернуться назад" : function() { $(this).dialog("close"); $('#rep').dialog('open'); } } }); } } }); $('#rep').dialog({ autoOpen: false, show: 'fade', hide: 'fade', width: 560, height: 500, dialogClass: 'modalfixed', buttons: { "Закрыть" : function() { $(this).dialog("close"); }, "Изменить репутацию": function() { $(this).dialog("close"); $('#repplus').dialog('open'); } } }); В общем окно открывает iframe, и когда пользователь например что-то не так ввел и получил ошибку, после того как вернуться назад и снова пробовать заполнить форму появляется та же страница с ошибкой, пока не перезагрузить страницу. Пробовал вместо кнопок на блоке поставить кнопку в самом фрейме типа javascript: history.go (-1), но это почему-то сбрасывает весь скрипт, да и хочется кнопки на самом блоке чтобы поддерживать одинаковый дизайн. Цитата Ссылка на сообщение Поделиться на других сайтах
WWW.ZEOS.IN 1 161 Опубликовано: 27 декабря 2012 Рассказать Опубликовано: 27 декабря 2012 Отформатируйте код, чтобы он стал читаемым и покажите больше примеров, так как я, например, не понял в чём у Вас ошибка/проблема. 1 Цитата Ссылка на сообщение Поделиться на других сайтах
nizhnyk 0 Опубликовано: 27 декабря 2012 Рассказать Опубликовано: 27 декабря 2012 (изменено) Автор Отформатируйте код, чтобы он стал читаемым и покажите больше примеров, так как я, например, не понял в чём у Вас ошибка/проблема. $(this).dialog("close"); $('#repplus').dialog('open'); Смотрите на код. Проблема в том что когда окно закрывается (dialog ("close")) оно сохраняет свое состояние. Таким образом, если пользователь не правильно ввел информацию в окне и получил ошибку, открывая окно еще раз он не может ввести информацию еще раз так как открывается сохраненное окно с ошибкой. Приходится перезагружать страницу чтобы состояние окна очистилося. Надеюсь теперь понятно) Изменено 27 декабря 2012 пользователем nizhnyk Цитата Ссылка на сообщение Поделиться на других сайтах
WWW.ZEOS.IN 1 161 Опубликовано: 27 декабря 2012 Рассказать Опубликовано: 27 декабря 2012 Покажите пример на Вашем сайте 1 Цитата Ссылка на сообщение Поделиться на других сайтах
nizhnyk 0 Опубликовано: 27 декабря 2012 Рассказать Опубликовано: 27 декабря 2012 (изменено) Автор Я сейчас делаю сайт на локалке. Уже все получилось но теперь подскажите как код сжать в формат как в файле dle_js.js, я хочу скрипт туда всунуть так как он будет отображаться почти на каждой странице, да и получилось около 80 строк кода хочу все аккуратно сделать. Это мой второй день с javascript, и второй день с сайтами в общем после двухлетнего перерыва от компьютера, не разбираюсь еще хорошо и забыл уже все ) Вот рабочий код если кому понадобиться пример: function sendrep(a){ $("#rep").remove(); $("body").append("<div id='rep' title='Репутация пользователя' style='display:none' ><iframe width='100%' height='400' src='/engine/reputation.php?doaction=read&user="+a+"' frameborder='0' marginwidth='0' marginheight='0' allowtransparency='true'></iframe></div>"); $('#rep').dialog({ autoOpen: false, show: 'fade', hide: 'fade', width: 560, height: 500, dialogClass: 'modalfixed', buttons: { "Закрыть" : function() { $(this).dialog("close"); }, "Изменить репутацию": function() { $(this).dialog("close"); sendrepchange(a,1); } } }); $('#rep').dialog('open'); return false; } function sendrepchange(a,{ $("#repchange").remove(); $("body").append("<div id='repchange' title='Добавление репутации' style='display:none' ><iframe name='addrepframe' id='addrepframe' width='100%' height='400' src='/engine/reputation.php?doaction=addform&user="+a+"&rep="+b+"' frameborder='0' marginwidth='0' marginheight='0' allowtransparency='true'></iframe></div>"); $('#repchange').dialog({ autoOpen: false, show: 'fade', hide: 'fade', width: 560, height: 500, dialogClass: 'modalfixed', buttons: { "Закрыть" : function() { $(this).dialog("close"); }, "Отправить": function() { document.getElementById("addrepframe").contentWindow.document.getElementById("addrepform").submit(); $(this).dialog({ buttons: { "Закрыть" : function() { $(this).dialog("close"); }, "Вернуться назад" : function() { $(this).dialog("close"); sendrep(a); } } }); } } }); $('#repchange').dialog('open'); return false; } [/code] Изменено 27 декабря 2012 пользователем nizhnyk Цитата Ссылка на сообщение Поделиться на других сайтах
Lomot 134 Опубликовано: 27 декабря 2012 Рассказать Опубликовано: 27 декабря 2012 $('.hzblock').remove(); ? Цитата Ссылка на сообщение Поделиться на других сайтах
Рекомендованные сообщения
Присоединяйтесь к обсуждению
Вы можете опубликовать сообщение сейчас, а зарегистрироваться позже. Если у вас есть аккаунт, войдите в него для написания от своего имени.