Модераторы: Sardar, Aliance
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Pop-up окно, получить информацию из pop-up окна 
:(
    Опции темы
Jilian
Дата 22.7.2008, 16:54 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 71
Регистрация: 24.1.2005
Где: Минск

Репутация: нет
Всего: нет



Добрый день,

не могу организовать трансфер информации из pop-up. 

Код

<html><head><title>Test</title>


<script LANGUAGE="JavaScript">
<!--
var newWind;

function Transfer(){
    alert("Transfer function1");
    
}
function createWindow() {
    newWind=window.open('', '', 'width=500,height=500,status=no,location=no,toolbar=no,menubar=no'); 
    var tmp = newWind.document;
    tmp.write('<html><head><title>Hello, i am pop-up</title></head>');
    tmp.write('<input type= "button" onClick = "Transfer()" value="Submit">');
    tmp.write('<input type=text  name=edit_box value=text>');
    tmp.write('<input type=radio name=rad1 value=Radio1> 1');
    tmp.write('<input type=radio name=rad2 value=Radio1> 2');
    tmp.write('<input type=radio name=rad3 value=Radio1> 3');    
    tmp.write('</html>');    
}


// -->
</SCRIPT>

</head>
<body>
<a href="http://google.com" onmouseover="createWindow()"
>google.com</a>

</body></html>


Итак, при наведении на линку вылазит pop-up окно, предполагается, что в нем есть эдит, в который можно что-то ввести, проблема в том, что я не могу забрать то, что ввел пользователь по окончанию ввода и нажатию кнопки Submit.

В данный момент я не могу добиться даже того, чтоб при нажатии на Submit вызывалась функция Transfer()

Подскажите пожалуйста, как это лучше организовать.

Заранее спасибо.

PM MAIL   Вверх
bars80080
Дата 22.7.2008, 17:44 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


прапор творюет
****
Награды: 1



Профиль
Группа: Завсегдатай
Сообщений: 12022
Регистрация: 5.12.2007
Где: Königsberg

Репутация: 15
Всего: 315



во-первых, кнопка сабмит не для того предназначена. ею формы отсылают, если хотите подключить на неё js, то используйте button

во-вторых, код вы записываете в новое окно, а функция Трансфер сидит в родительском, обращайтесь к ней так:
Код

onClick = "opener.document.Transfer();" 

или без document


хотелось бы также заметить, что коли содержимое статическое, то его лучше уже иметь в открываемом окне, а не закидывать скриптом
PM MAIL WWW   Вверх
Jilian
Дата 22.7.2008, 17:53 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 71
Регистрация: 24.1.2005
Где: Минск

Репутация: нет
Всего: нет



Спасибо громадное!

onClick = "opener.Transfer()" -так надо =)

Подскажите пожалуйста, как мне из эдита 

    tmp.write('<input type=text  name=edit_box value=text>');

получить содержимое.... одной мне не справится....

заранее спасибо!

Добавлено через 14 минут и 51 секунду
я пыталась так

    tmp.write('<input id = Text1 type=text  value=text>');

а затем, чтоб вывести содержимое эдита

    alert(opener.getElementById('Text1').value);

но не получается =)

Это сообщение отредактировал(а) Jilian - 22.7.2008, 17:59
PM MAIL   Вверх
bars80080
Дата 22.7.2008, 20:05 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


прапор творюет
****
Награды: 1



Профиль
Группа: Завсегдатай
Сообщений: 12022
Регистрация: 5.12.2007
Где: Königsberg

Репутация: 15
Всего: 315



та же самая ошибка, но с другого бока

у вас два окна. одно родительское в котором всё начинается, второе новое, которое вы создаёте. когда вы обращаетесь к элементам документов этих окон, то нужно указать точный адрес.
понятное дело если вы в одном окне обращаетесь к элементу этого же окна. тогда пишете просто document.getElement...
а если к другому окну?

так как родительское окно вы никак не называете, то из нового окна существует адрес opener.document...
а как обратится из родительского к новому? (а ведь новых окон можно открыть много), так вы же вернули его идентификатор на имя newWind!

функция у вас в родительском окне, а инпутбоксы в новом
так и обращайтесь: 
Код
alert(newWind.document.getElementById('Text1').value);
 или без документа (никогда не помню где употребляется, а где нет)
PM MAIL WWW   Вверх
Jilian
Дата 23.7.2008, 11:18 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 71
Регистрация: 24.1.2005
Где: Минск

Репутация: нет
Всего: нет



Большое спасибо, вроде разобралась =)
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Форум для вопросов, которые имеются в справочниках, но их поиск вызвал затруднения, или для разработчика требуется совет или просьба отыскать ошибку. Напоминаем: 1) чётко формулируйте вопрос, 2) приведите пример того, что уже сделано, 3) укажите явно, нужен работающий пример или подсказка о том, где найти информацию.
 
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | JavaScript: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.0889 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.