powered by simpleCommunicator - 2.0.59     © 2025 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / HTML, JavaScript, VBScript, CSS [игнор отключен] [закрыт для гостей] / Как сослаться на вложеный фрейм?
12 сообщений из 12, страница 1 из 1
Как сослаться на вложеный фрейм?
    #34450750
Gelo_R
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Debug.Print HDoc.frames("FR_Top").Name - Работает!

А на эти 2 строчки ругается - отказано в доступе.
Debug.Print HDoc.frames("FR_R").Name
Debug.Print HDoc.frames("FR_L").Name

Как правильно сослаться на эти фреймы? (работаю из под ВБА)


Как правильно сослаться на документ из фрема name="FR_L" и name="FR_R"
<html>
<head>
<title>GSPN - UA10_PF_MOCHNA/Ukraine</title>
</head>
<frameset name="FR_Perent" rows="50,*">
<frame src="file://D:\Report\B2B\B_myinfo.gif" name="FR_Top">
<frameset name="FR_Ch" cols="40%,*">
<frame src="http://www.mail.ru" name="FR_L">
<frame src="http://www.mail.ru" name="FR_R">
</frameset>
</frameset>
</html>
...
Рейтинг: 0 / 0
Как сослаться на вложеный фрейм?
    #34450769
LINUXER
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
.frames["FR_L"]
...
Рейтинг: 0 / 0
Как сослаться на вложеный фрейм?
    #34450954
Gelo_R
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Так чудесно работает с HDoc.frames("FR_Top")
Но не работает с HDoc.frames("FR_R") и HDoc.frames("FR_L").

Видимо по причине, что они описаны во вложеном фреймсете. Или же правильно выбрать тип переменных - HTMLdocument, IHTMLdocument, IHTMLdocument2 ...
Как правильно?
...
Рейтинг: 0 / 0
Как сослаться на вложеный фрейм?
    #34451262
Фотография Antonariy
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Отказано в доступе потому что докуметы с другого сайта - mail.ru.
Безопасность, однако.
...
Рейтинг: 0 / 0
Как сослаться на вложеный фрейм?
    #34451911
Gelo_R
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Однозначно НЕТ! Если указать мэйл.ру в 1-ом фрейме - все работает на ура! Если во втором и третем фреймах указать адресс какой нибудь картинки - все равно будет отказано в доступе! Причина, однозначно, во вложеных фреймсетах! Такое впечатление, что стандартные функции работают некоректно. Видно придется писать свою... Что-то вроде -

Set HFrm=myGetFrame(HDoc, idFrmane)...
Ничего другого в голову не приходит. На форумах глухо. Наверно никто не умеет! :-)
...
Рейтинг: 0 / 0
Как сослаться на вложеный фрейм?
    #34452276
Фотография Ex_Soft
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Вообще-то frames - массив обЪекта window, а не document.
Код: plaintext
\nalert("top.frames.length="+top.frames.length);\nfor(var i= 0 ; i<top.frames.length; ++i)\n   alert("top.frames["+i+"].name=\\\""+top.frames[i].name+"\\\"");\n
у меня показывает все три фрейма... Ну а доступ уже обсуждался
_________________
"Helo, word!" - 17 errors 56 warnings
...
Рейтинг: 0 / 0
Как сослаться на вложеный фрейм?
    #34452382
Gelo_R
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Я конечно туго понимаю что такое - alert("top.frames.length="+top.frames.length);
Но задача немного в другом.
Есть бровсер. Получаю у него документ.
Set HDoc = IE.document

Debug.Print HDoc.frames.lenght - говорит 3. Тогда спрашиваю...
Debug.Print HDoc.frames(0).name - отвечает FR_Top
А на строчки -
Debug.Print HDoc.frames(1).name - ругается
Debug.Print HDoc.frames(2).name

документ вот -
<html>
<head>
<title>GSPN - </title>
</head>
<frameset name="FR_Perent" rows="50,*">
<frame src="file://D:\Report\B2B\B_myinfo.gif" name="FR_Top">
<frameset name="FR_Ch" cols="40%,*">
<frame src="http://www.mail.ru" name="FR_L">
<frame src="http://www.mail.ru" name="FR_R">
</frameset>
</frameset>
</html>
Проблема во вложеном фреймсете. А как правильно его получить, или через документ, или через вындоу...
Кто подскажет? Как например прочитать значение поля "логин" из фрейма FR_L и FR_R ???
...
Рейтинг: 0 / 0
Как сослаться на вложеный фрейм?
    #34452441
Фотография Ex_Soft
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Gelo_R
Получаю у него документ

1. Ex_Soft
Вообще-то frames - массив обЪекта window, а не document.

2. Когда получаете?
Сразу по ходу? А Вы уверены, что все уже загрузилось?
3. В контексте какого обЪекта получаете?
Я не вижу в приведенном Вами html\'е даже строчки подключения какого-нить *.js\'а
Gelo_R
Как например прочитать значение поля "логин" из фрейма FR_L и FR_R

Ex_Soft
доступ уже обсуждался

_________________
"Helo, word!" - 17 errors 56 warnings
...
Рейтинг: 0 / 0
Как сослаться на вложеный фрейм?
    #34452495
Gelo_R
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Получаю так:
Просто нахожу нужную мне страничку из всех открытых в браузере...
получаю документ и передаю его в процедуру для разборки...
Public Sub F1()
Dim objShell As New Shell32.Shell
Dim objBrowser As SHDocVw.WebBrowser
Dim objHTMLDocument As MSHTML.HTMLDocument
Dim sURL As String
sURL = "file://D:\Report\B2B\EP_Default1.html"

For Each objBrowser In objShell.Windows
If StrComp(Right(objBrowser.FullName, 12), "iexplore.exe", vbTextCompare) = 0 Then
If TypeName(objBrowser.document) = "HTMLDocument" Then
Set objHTMLDocument = objBrowser.document
Debug.Print objHTMLDocument.Title, objHTMLDocument.URL
If objHTMLDocument.URL = sURL Then
Set HDoc = objHTMLDocument
Exit For
End If
End If
End If
Next
Call HDocAn1(HDoc, "-")
End Sub
...
Рейтинг: 0 / 0
Как сослаться на вложеный фрейм?
    #34452551
Фотография Ex_Soft
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ex_Soft
доступ уже обсуждался
Код: plaintext
\n// Get control\'s value\nSmthVariable=document.getElementById("FR_L").contentWindow.document.getElementById("InputLogin").value;\n// ||\nSmthVariable=frames[ 1 ].document.getElementById("InputLogin").value;\n

_________________
"Helo, word!" - 17 errors 56 warnings
...
Рейтинг: 0 / 0
Как сослаться на вложеный фрейм?
    #34452688
Gelo_R
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Из под ВБА это не работает...
...
Рейтинг: 0 / 0
Как сослаться на вложеный фрейм?
    #34453848
Gelo_R
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Так, что, на VBA или VBScript это сделать шансов совсем нету?
...
Рейтинг: 0 / 0
12 сообщений из 12, страница 1 из 1
Форумы / HTML, JavaScript, VBScript, CSS [игнор отключен] [закрыт для гостей] / Как сослаться на вложеный фрейм?
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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