Forum Webscript.Ru

Программирование => JavaScript & JScript => Тема начата: Rodent от 05 Апреля 2004, 00:36:38

Название: Передача данных
Отправлено: Rodent от 05 Апреля 2004, 00:36:38
У меня вот такая ситуация.
Гостевая книга, добавление нового сообщения, неполный набор смайликов (при нажатии код вставляется в textarea, где собственно и набирается текст сообщения), ссылка на полный набор смайликов. при нажатии на ссылку открывается новое окно с помощью JavaScript, в котором выводяться уже все имеющиеся смайлики.
Теперь вопрос, как мне передать код смайлика на основную страницу со новой страницы?
Название: Передача данных
Отправлено: CGVictor от 05 Апреля 2004, 08:44:25
window.opener в "новом окне" возвратит тебе главное окно. И передавай туда что хочешь, как обычно.
Название: Передача данных
Отправлено: Werwolf13 от 05 Апреля 2004, 11:57:23
Хочу просто уточнить, что если окно модальное, то обращаться к нему через window.opener не получится, и вообще, во время активности модального окна нельзя. Надо тогда передавать через returnValue...

тут оно... в msdn (http://msdn.microsoft.com/library/default.asp?url=/workshop/author/dhtml/reference/methods/showmodaldialog.asp)
Название: Передача данных
Отправлено: Rodent от 05 Апреля 2004, 18:40:47
CGVictor
А как это, обычно???

Я, конечно прошу прощения но с Java общаюсь пока на Вы и довольно-таки редко. Просто не могли бы вы мне дать код, как из нового окна со всеми смайликами, код выбранного смайлика перенести в форму сообщения.

на самой же форме я использую такой код.

при  этом у меня определна форма Luxery
и все смайлики под ссылкой вида
img смайлика
Название: Передача данных
Отправлено: Werwolf13 от 05 Апреля 2004, 18:50:13
Просто... из дочернего окна пишешь не, скажем, document.Lux... , а window.opener.Lux...  и т. д.
Название: Передача данных
Отправлено: Rodent от 05 Апреля 2004, 19:53:41
Не получается...
Плиз...
Дайте готовый вариант.
Название: Передача данных
Отправлено: Rodent от 05 Апреля 2004, 19:56:29
Werwolf13
при замене на то что ты мне написал мне открывается окно с такой адресной строкой javascript:%20smile(\'%20:angel:%20\');
Название: Передача данных
Отправлено: Rodent от 05 Апреля 2004, 19:57:32
Вот мне еще интересно, я вообще правильно окно открываю

function smiles() {  
   var x = event.screenX - 150;
   var y = event.screenY - 330;
   var sFeatures = \'dialogLeft:\'+x+\'px;dialogTop:\'+y+\'px;dialogHeight:380px;dialogWidth:410px;help:no;status:no;unadorned:yes\';
   window.showModelessDialog("smiles.php", window, sFeatures);
}

Все Смайлики
Название: Передача данных
Отправлено: Werwolf13 от 05 Апреля 2004, 20:52:51
А... ну, понятно. С ModellesDialog эта техника не пройдет. Надо поступать иначе. Мы используем window, который ты передаешь при открытии окна. В функции в дочернем окне , где ты собираешься добавлять смайлик в родительское окно, напиши:
var x = window.dialogArguments; // -- это мы вытаскиваем второй параметр функции showModellesDialog(...)
x.document.Luxery.mess.value=x.document.Luxery.mess.value+ico;
// ну имей, конечно ввиду, что ico -- это иконка выбранная в этом (дочернем)  окне
Название: Передача данных
Отправлено: Rodent от 05 Апреля 2004, 21:54:53
Werwolf13
я чего-то не догоняю. Давай разберемся...
я решил что лучше я пойду по такому пути, который ты предложил в первый раз (c window.open). Итак:

У меня гавное окно с некоторым количеством смайликов.
img смайлика и т.д.
в этом же окне форма с именем Luxery
на этой же странице скрипт

а так же ссылка на новое окно с полным количеством смайликов
• Все Смайлики


В новом окне у меня полный список смайликов
img смайлика и т.д.
а так же скрипт


И теперь.
1. на главной странице код смайлика вставляется в форму сообщения
2. новое окно открывается со всеми заданными параметрами
3. с вторичного окна смайликов (всех смайлы) НЕ ВСТАВЛЯЕТСЯ код смайлика на основной странице в форму.

Вопрос. что я делаю не так???
Название: Передача данных
Отправлено: Werwolf13 от 06 Апреля 2004, 11:28:23
1. window.opener.document.Lux....  
2. Старайся избегать конструкции href="javascript: ...    лучше пиши:
    href="#" onclick="smile(...)" ...
Название: Передача данных
Отправлено: Rodent от 06 Апреля 2004, 12:16:58
Werwolf13
не работает, даже со всеми изменениями.

Итак вопрос ко всем кто знает с чем это едят...

Основная страница
У меня основной документ это форма с именем Luxery и полем textarea с именем mess. Так же есть смайлики которые выглядят так  img смайлика и т.д. Плюс сам java script

здесь же ссылка на открытие нового окна Все Смайлики


Дополнительная страница
Когда новое окно открывается, в нем все имеющиеся смайлики img смайлика и т.д. плюс вот такой java script


Результат
- в основном окне код смайлика добавляется
- новое окно открывается
- в основное окно НЕ ВСТАВЛЯЕТСЯ код смайлика из дополнительного окна

Вопрос
- В чем проблема?
- Что я делаю не так??
Название: Передача данных
Отправлено: Werwolf13 от 06 Апреля 2004, 12:42:01
файл main.html:











файл successor.html:



press...


Все проверено, все стреляет...
Название: Передача данных
Отправлено: Jadd от 24 Апреля 2006, 21:01:19
Этот способ работает только в ослике. А как сделать тоже самое для других броузеров?