powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / HTML, JavaScript, VBScript, CSS [игнор отключен] [закрыт для гостей] / Как с помощью JavaScript читать/писать данные в фреймах и вызывать там события?
16 сообщений из 16, страница 1 из 1
Как с помощью JavaScript читать/писать данные в фреймах и вызывать там события?
    #35823529
Фотография SandalTree
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Хочу поисковик сделать для личных нужд.
Задача такая:
1. Из фрейма 1 читать по порядку данные и вставлять их в бокс в фрейме 3.
2. Затем нажимать кнопку Submit (вызывать событие)
3. Далее из фрейма 3 находить полученное значение, считывать его и записывать в фрейм 2.
4. Делать возврат в фрейме 3 или просто перезагружать фрейм с Frame3.htm
5. Идти на №1 по кругу пока в фрейме 1 данные не кончатся.

index.thm:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
<HTML>
<HEAD>
<TITLE>A simple frameset document</TITLE>
</HEAD>
<script type="text/javascript">
.....
</script>
<FRAMESET cols="20%, 80%">
  <FRAMESET rows="100, 200">
      <FRAME src="Frame1.htm" NAME="page1">
      <FRAME src="Frame2.htm" NAME="page2">
  </FRAMESET>
  <FRAME src="Frame3.htm" NAME="page3">
</FRAMESET>
</HTML>

Frame1.htm:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
<html>
<head>
</head>
<body>
<Table>
<TR><TD>A</TD></TR>
<TR><TD>B</TD></TR>
<TR><TD>C</TD></TR>
<TR><TD>D</TD></TR>
<TR><TD>E</TD></TR>
<TR><TD>F</TD></TR>
</Table>
</body>
</html>

Frame2.htm:
Код: plaintext
1.
2.
3.
4.
5.
<html>
<head>
</head>
<body>
</body>
</html>

Frame3.htm:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
<html>
<head>
</head>
<body>
<form action="Frame4.asp?" method="post" name="searchForm" enctype="">
Search for: 
	<input type="text" name="ST" id="ST" size="10" maxlength="100" value="">
	<input value="Search" type="button">
</form>
</body>
</html>

Frame4.asp:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
<html>
<head>
</head>
<body>
<Table>
<TR><TD> 1 </TD></TR>
</Table>
</body>
</html>


Ткните пожалуйста носом как это можно сделать, а то я в JS не профессионал и даже не знаю возможно-ли то что я задумал.
...
Рейтинг: 0 / 0
Как с помощью JavaScript читать/писать данные в фреймах и вызывать там события?
    #35823582
Фотография Ex_Soft
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
тынць
_________________
"Helo, word!" - 17 errors 56 warnings
Posted via ActualForum NNTP Server 1.4
...
Рейтинг: 0 / 0
Как с помощью JavaScript читать/писать данные в фреймах и вызывать там события?
    #35825850
Фотография SandalTree
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ex_Soft,

Спасибо большое. Получилось.

А не подскажете ещё как читать со страницы если там только текст и может быть ещё какие-то таблички?
...
Рейтинг: 0 / 0
Как с помощью JavaScript читать/писать данные в фреймах и вызывать там события?
    #35826006
Фотография Ex_Soft
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Огласите конечную цель предприятия...
_________________
"Helo, word!" - 17 errors 56 warnings
Posted via ActualForum NNTP Server 1.4
...
Рейтинг: 0 / 0
Как с помощью JavaScript читать/писать данные в фреймах и вызывать там события?
    #35828071
Фотография SandalTree
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Есть некоторый сайт, на нём есть поиск по данным, но так как данных очень много то я решил вместо того что-б ручками вбивать поисковые значения или копипастить, а потом из возвращённых результатов выковыривать данные сделать это всё на JS. Потом возможно подкручу MySQL&PHP, но пока обьём не настолько большой и можно обойтись HTMLем.

Попробовал вот такую конструкцию в page1. Данные кое как дёргаю через document.body.innerHTML, но вот как вернуть их себе на страницу не знаю.

Если первый "document.write("Hello World!");" работает, то уже "docoment.write("XXXXXXXXXXXXXXXXXXXXXX");" выдаёт ошибку. Говорит: Document is not defined.

Так я полагаю оно должно писать в текущем документе, я-ж ничего вроде не менял.
Код: plaintext
1.
2.
3.
4.
5.
 document.write("Hello World!");
 parent.document.getElementById("page3").contentWindow.document.getElementById("ST").value = "1223";
 parent.document.getElementById("page3").contentWindow.document.searchForm.submit();
 Text = parent.document.getElementById("page3").contentWindow.document.body.innerHTML;
 docoment.write("XXXXXXXXXXXXXXXXXXXXXX");
...
Рейтинг: 0 / 0
Как с помощью JavaScript читать/писать данные в фреймах и вызывать там события?
    #35828108
Фотография Ex_Soft
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
SandalTree
Код: plaintext
1.
docoment.write("XXXXXXXXXXXXXXXXXXXXXX");

???
_________________
"Helo, word!" - 17 errors 56 warnings
Posted via ActualForum NNTP Server 1.4
...
Рейтинг: 0 / 0
Как с помощью JavaScript читать/писать данные в фреймах и вызывать там события?
    #35828232
Фотография SandalTree
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ex_Soft,

Спасибо, я аж покраснел от такой ошибки.

Теперь задача вырисовалась такая, после того как я делаю submit на page3 мне нужно подождать когда она загрузится и только потом читать контент через body.innerHTML (3-я строка).
Это возможно?

Код: plaintext
1.
2.
3.
4.
parent.document.getElementById("page3").contentWindow.document.getElementById("ST").value = "1223";
parent.document.getElementById("page3").contentWindow.document.searchForm.submit();
Text = parent.document.getElementById("page3").contentWindow.document.body.innerHTML;
document.write(Text);
...
Рейтинг: 0 / 0
Как с помощью JavaScript читать/писать данные в фреймах и вызывать там события?
    #35828433
ShSerge
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
SandalTree,
Сандаль, признайся честно, нафиг тебе такие финты нужны? Во-первых, здесь (т.е. на этом самом хоруме) много чего про это написано, задачку - поставь таки! Решим, ёлы-палы!
...
Рейтинг: 0 / 0
Как с помощью JavaScript читать/писать данные в фреймах и вызывать там события?
    #35828569
Фотография SandalTree
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ShSerge,

Так я-ж вроде всё рассказал что мне нужно и как пытаюсь сделать.

Грубо говоря задача - делать поиск и выискивать в возвращённом контенте некие данные.

Не знаю, но думаю вряд-ли поможет если я тебе дам конкретный сайт откуда я хочу тянуть данные.

Думаю что задача должна быть достаточно тривиальна и много раз решена другими средствами. Думаю нет проблем решить её на ColdFusion или C#, но я не хочу ставить себе на домашний комп ни то не другое. Поэтому пытаюсь применить самое наипростейшее решение которое возможно не только мне поможет.
...
Рейтинг: 0 / 0
Как с помощью JavaScript читать/писать данные в фреймах и вызывать там события?
    #35828606
Фотография Ex_Soft
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
SandalTree
после того как я делаю submit на page3 мне нужно подождать когда она загрузится и только потом читать контент

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
var
	frm;

if(!(frm=parent.document.getElementById("page3")))
	return;

frm.contentWindow.document.getElementById("ST").value = "1223";
frm.onload=function(){document.write(frm.contentWindow.document.body.innerHTML)};
frm.contentWindow.document.searchForm.submit();
???
_________________
"Helo, word!" - 17 errors 56 warnings
Posted via ActualForum NNTP Server 1.4
...
Рейтинг: 0 / 0
Как с помощью JavaScript читать/писать данные в фреймах и вызывать там события?
    #35828637
Фотография Ex_Soft
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
SandalTree
задача - делать поиск и выискивать в возвращённом контенте некие данные

Дык
Error Console
Error: Permission denied to get property Window.document
Source File: file:///iframe1.html
Line: 23

_________________
"Helo, word!" - 17 errors 56 warnings
...
Рейтинг: 0 / 0
Как с помощью JavaScript читать/писать данные в фреймах и вызывать там события?
    #35830305
Фотография SandalTree
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ex_Soft,

Получается задача нерешаема с помощью JS?

А если попробовать открыть новое окно и делать это там?
...
Рейтинг: 0 / 0
Как с помощью JavaScript читать/писать данные в фреймах и вызывать там события?
    #35830835
Фотография Ex_Soft
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
SandalTree
А если попробовать открыть новое окно и делать это там?

Ну... Дык... Попробуйте... Кто ж Вам не дает?
У меня
Error Console
Error: Permission denied to get property Window.document
Source File: file:///google_search.html
Line: 47

SandalTree
Получается задача нерешаема с помощью JS?

Получается - да...
_________________
"Helo, word!" - 17 errors 56 warnings
Posted via ActualForum NNTP Server 1.4
...
Рейтинг: 0 / 0
Как с помощью JavaScript читать/писать данные в фреймах и вызывать там события?
    #36236297
KLEVO
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Ex_Soft
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
var
	frm;

if(!(frm=parent.document.getElementById("page3")))
	return;

frm.contentWindow.document.getElementById("ST").value = "1223";
frm.onload=function(){document.write(frm.contentWindow.document.body.innerHTML)};
frm.contentWindow.document.searchForm.submit();

А разве так можно вообще делать по самой сути? В браузерах ведь из соображений безопасности отключили модификацию содержимого с чужеродного домена.

Ex_Soft
SandalTree
Получается задача нерешаема с помощью JS?

Получается - да...

Есть единственный вариант решения данной задачи - это использовать перенос содержимого.
Т.е. Принцип коллектор-приемник или использовать какого-то плана задержку-чек на загрузку.
...
Рейтинг: 0 / 0
Как с помощью JavaScript читать/писать данные в фреймах и вызывать там события?
    #36236319
Фотография Яростный Меч
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
SandalTreeПолучается задача нерешаема с помощью JS?Как я понимаю, есть некий сайт, с которого надо пособирать информацию (возможно, поподгружать) и компактно сформировать ее в определенном месте?

Предположим, что я понимаю правильно.

Тогда единственным выходом будет исполние JS "на территории" этого сайта. Причем место, куда будет складываться полученная информация, тоже должно быть там же.
1) Просто открываем сайт на нужной странице.
2) В строке браузера пишем javascript:alert(document.location); , жмем [Ентер], убеждаемся, что свой JS исполняться на сайте может. :)
3) Разбираемся со структурой DOM на сайте, и как там всё работает.
4) Составляем скрипт на JS. Необходимо добавить скриптом место для собирания информации (div и что-то там внутри него), после чего непосредственно заняться сбором (обходить DOM, при необходимости выполнять Ajax-запросы и т.д.). Поскольку, судя по всему, загрузок файлов здесь не намечается, то вполне можно обойтись стандартным xmlHttpRequest'ом.
5) Скрипт сохраняем в файл. Врядли его размер будет >100 кб, потому можно обойтись лучшим файлообменником для маленьких файлов - sql.ru :) Просто прикладываем файл к посту, например в этот топик. Теперь JS будет доступен по адресу http://www.sql.ru/forum/actualfile.aspx?id=NNNNNNN, где NNNNNNN - номер поста.
6) Делаем закладку в браузер, в адресе пишем

javascript:oSandalTree=document.createElement("script");oSandalTree.src="http://www.sql.ru/forum/actualfile.aspx?id=NNNNNNN";document.body.appendChild(oSandalTree);void(0);


Теперь если нажать эту закладку, когда открыт сайт, то JS загрузится на страницу, выполнится и сделает всё что нужно.

Задача непростая, отладка займет кучу времени.


Есть, конечно, вариант сделать на C#, используя ХТТП-запросы, но этот путь ещё более джедайский :)
...
Рейтинг: 0 / 0
Как с помощью JavaScript читать/писать данные в фреймах и вызывать там события?
    #36236358
Фотография SandalTree
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Яростный МечЗадача непростая, отладка займет кучу времени.
Забросил я это пока, я-ж не профи в JS, в добавок я не уверен что на сайте можно JS иcполнить.

Яростный МечЕсть, конечно, вариант сделать на C#, используя ХТТП-запросы, но этот путь ещё более джедайский :)Когда-то я делал такое на ColdFusion, но давно это было, и CF сервер для этого нужен. Про С# я думал, но если задача не решается "влоб", то это уже выходит за рамки бюджета.
...
Рейтинг: 0 / 0
16 сообщений из 16, страница 1 из 1
Форумы / HTML, JavaScript, VBScript, CSS [игнор отключен] [закрыт для гостей] / Как с помощью JavaScript читать/писать данные в фреймах и вызывать там события?
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]