Доступ к контенту iframe с родительской страницы, когда контент iframe готов - PullRequest
2 голосов
/ 19 марта 2012

Я делаю асинхронную загрузку файла с помощью jquery / php, используя целевой атрибут формы.Цель - мой iframe с именем «uploads»;Чтобы устранить ошибку в php-файле, я возвращаю строку типа «ERR_TOO_LARGE_FILE» с эхом, который будет находиться внутри тела iframe.

Проблема в том, что я не знаю, как определить, когда iframe готов, и получить доступего содержание, чтобы увидеть, если есть ошибка.Я попробовал следующий код, но он не работал:

$("#uploads").on("load", function() {
    alert($(this).html());
});

окно предупреждения появилось, но внутри ничего не было.Я также попытался использовать готовое событие вместо этого, но на этот раз ничего не появляется.

Хотелось бы узнать способ достижения этого или альтернативного решения, если у вас есть лучшее.

1 Ответ

4 голосов
/ 19 марта 2012

Поскольку вам не разрешено изменять содержимое iframe, по крайней мере, вы этого не предполагаете, вы не можете напрямую получить к нему доступ с помощью jquery.Используйте .contents() & .find(), чтобы получить html из iframe, чтобы вы могли получить необходимую информацию.

Таким образом,

$("#uploads").on("load", function() {
    alert($(this).contents().find('html').html());
});

должен возвращать содержимое HTML в iframe.Вы можете поменять «html» для идентификатора тега, если знаете конкретный элемент, который ищете.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...