![]() |
JS: Скрипт для вызова элемента одного окна из другого
Если есть окно А, из него вызывается окно Б, в окне Б есть текстовый элемент Ц, то можно ли, после вызова окна Б, из окна А изменить значение элемента Ц?
|
Когда window.open() открываешь окно, то указываешь его имя. Вот через это имя и обращайся. Например: win_name.document.forms[0].elements[0].value .
Код:
mywin = window.open("http://something.ru/page.html","mywinname"); |
Ясно
Добавлено в ту же минуту: а чем отличается forms.formname от forms["formsname"]? |
Ничем.
|
Спасибо. у меня тут еще вопрос:
Если вызываемый элемент это <option> внутри <select>, и нужно просто выделить определенный элемент из <select> то как это сделать? |
на все option пропиши a href
|
чего? при чем здесь a href к option?
|
да, изивини, я не понял тебя...
тебе нужно в select прописать событие onchange= |
Наверно так:
Основное окно: <html> <script> var objwin=window.open("mypage.htm","NewWin","height=150, width=300") var i=objwin.document.all.testit.selectedIndex alert(objwin.document.all.testit.options[i].text) </script> </html> Всплывающее окно: <script> function myselection() {i=document.all.testit.selectedIndex} </script> <select name=testit onchange="myselection()"> <option id="q1">qw1 <option id="q2" selected>qw2 <option id="q3">qw3 <option id="q4">qw4 </select> |
imho он имеет ввиду выделить цветом.. через CSS imho
|
CEO
hempsmoke Опять вы меня не поняли... Я имею ввиду - есть окно А, из него вызывается окно Б. В окне Б есть <select name="somesel"> <option name="op1" value="1">1</option> <option name="op2" value="2">2</option> </select> Так вот нужно из окна А вызвать окно Б (как это сделать мне уже ясно), а затем, из окна А выделить пункт 2 из списка. При чем здеcь alert, onselect и прочее? Добавлено в ту же минуту: Stasik Нет, просто выделить. В смысле - поставить focus Добавлено через 1 минуту: что то вроде window.forms.somesel.op2.focus?? |
А, ну тогда попробуй так(в основном окне)
objwin.document.all.testit.selectedIndex=2 objwin см выше, 2-- индекс. |
CEO
О, это уже больше похоже на правду. Сейчас буду пробовать Добавлено через 13 минут: Я написал вызов вот так <a href="#null" onclick="var objwin=window.open('page.php','NewWin','Width=550,Height=500'); objwin.document.all.forms.upload.to.selectedIndex=2;">ссылка</a> В результате - document.all.forms.upload.to is null or not an object... Хотя всплывающее окно открывается upload - имя формы, to - имя элемента select |
Neo :Покажи так же и код касаемый select(т.е. что там у тебя по этому поводу в 'page. php') написаннно?
У меня то что я написал (в IE 5.5) работало. |
<form name=upload>
<select name="to"> <option name=name1 value=value1>blabla1</option> <option name=name2 value=value2>blabla2</option> <option name=name3 value=value3>blabla3</option> <option name=name4 value=value4>blabla4</option> </select> </form> |
Neo :Вместо Name попробуй писать id="" А value там зачем?
|
Низачем. Это я так, привел пример упрощенной формы. На самом деле там нет никакого value...
Добавлено через 1 минуту: И никакого результату от того что я ID пишу... Добавлено через 1 минуту: У тебя элемент select не был вложен в форму... а какой толк от такого элемента? |
---------------------
<script> var objwin=window.open("mypage.htm","NewWin","height=150, width=300") x=objwin.xi.testit.options[1].selected=true //0,1,или какой-там тебе нужен индекс... </script> --------------------- <form name="xi"> <select name=testit onchange="myselection()"> <option id="q1" selected>qw1 <option id="q2">qw2 <option id="q3">qw3 <option id="q4">qw4 </select> </form> Должно работать, т.к. у меня работает Добавлено через 5 минут: Ошибка objwin.document.all.forms.upload.to.selectedIndex=2; в том, что иерархия объектов такая: window | Forms | Select | Options |
xi.testit is null or not an object
:баран: Добавлено через 25 минут: Кстати, а кто это подредактировал заголовок моего топика? |
Цитата:
|
RaZEr
тогда она пишет document.forms.upload.to is null or not an object... :confused: |
Вложений: 1
RaZEr :Правильно, "Объектная модель: window -> document -> forms",
но как я написал тоже почему-то работает в IE5.5. Neo:А файл всплываюшего окна целиком можно посмотреть? |
Вложений: 1
в принципе, это уже не актуально, поскольку я избавился от окошка вообще (java же не у всех включена)/ но разобраться интересно... так что прикладываю
кстати у меня тоже 5.5 Добавлено в ту же минуту: Да кстати, спасибо за объектную модель |
Neo :Да, всплывающие окна вешь не очень приятная.
Но чисто в научных целях попробуем разобраться... |
Как удалось без ява? смотри здесь http://shabash.dreamsee.ru/contacts/sendmsg.php
Добавлено через 3 минуты: Ну да и JavaScript не у всех включен.. жаль никто не может реализовать по настоящему, то, что мы обсуждаем в этой теме... |
| Часовой пояс GMT +4, время: 00:52. |
Powered by vBulletin® Version 3.8.5
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.