Получить обновленное значение iFrame - PullRequest
0 голосов
/ 08 марта 2011

Я отправляю форму с целью в iFrame.Теперь, когда я пытаюсь получить innerHTML iFrame, я получаю ноль.Вот мой код:

<form  name="upload_form" action="" method="post" target="upload_target">
//----- other tags
</form>
<iframe id="upload_target" name="upload_target" src=""></iframe>

Действие возвращает значение id, которое будет установлено в iFrame.Теперь после этого, когда я пытаюсь получить innerHTML из iFrame, он показывает ноль.В то время как в пользовательском интерфейсе я вижу значение идентификатора в iFrame.

Код js:

alert(document.getElementById("upload_target").innerHTML);

Как получить значение идентификатора из iFrame?

Ответы [ 2 ]

0 голосов
/ 08 марта 2011

Вы можете вернуть html-страницу, которая вызывает функцию обратного вызова в окне parrent:

<html>
<head runat="server">
    <title>Upload Result</title>
</head>
<body>
    <script type="text/javascript">
        window.onload = function () {
            var fn = parent['uploadSuccess'];
            if (fn) {
                fn(<fileId>);
            }            
        };
    </script>
</body>
</html>

И в окне parrent:

window['uploadSuccess'] = function(fileId) {
   // do something with the fileId
}
0 голосов
/ 08 марта 2011

Вы должны использовать свойство contentWindow для доступа к содержимому iframe:

document.getElementById('upload_target').contentWindow.document.documentElement.innerHTML
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...