Модераторы: Sardar, Aliance

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Передать запрос POST скрытому фрейму, В IE не работоет!!! 
V
    Опции темы
Ghirik
Дата 28.8.2007, 09:52 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 919
Регистрация: 26.3.2007

Репутация: 13
Всего: 20



Цитата

А Мазилла как я понел в последнем выражение не понимает именно это - parent.content.innerHTML=text.innerHTML т.е. Элемент content. Как сделать чтобы он его понял ??? 


Для мозилы следует писать:

Код

parent.contentDocument.innerHTML=text.innerHTML 


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

Это сообщение отредактировал(а) Ghirik - 28.8.2007, 10:41


--------------------
Отдадим всё клиенту, пускай его машина мучается...

PM MAIL   Вверх
Папараццы
Дата 28.8.2007, 11:20 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 475
Регистрация: 18.9.2006
Где: Баку

Репутация: нет
Всего: нет



Ну вот я только через функцию. Между прочим попробовал именно то что я выставил. Все нормально работает на всех браузерах. 


--------------------
/*---------------------------------------------------------------------------------*/
PM MAIL WWW ICQ MSN   Вверх
Ghirik
  Дата 28.8.2007, 13:20 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 919
Регистрация: 26.3.2007

Репутация: 13
Всего: 20



Ну вот, вроде всё работает. Я делал для себя, потому несколько по-другому.
Работает во всех браузерах.

Файл с формой и фреймом:

Код

<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=windows-1251">
<title>name2</title>
</head>
<body>
<div id=div1></div>
<iframe id=I1 name=I1 onload="div1.innerHTML=this.contentDocument.body.innerHTML" style="display: none">
</iframe>
<form method=POST action=answer.php target=I1 enctype=multipart/form-data>
<input type=text name=T1>
<input type=submit value=Отправить name=B1>
</form>
</body>
</html>


Типа, обработчик, скорее - отвечальщик smile  answer.php :
Код

<html>
<body onload="parent.div1.innerHTML=document.body.innerHTML">
<p id=txt>
<?php
print_r($_POST);
?>
</p>
</body>
</html>


Уменя цель была передать данные из обработчика без перезагрузки страницы с формой. Данные передаются в div на странице с формой. Для меня вопрос закрыт. Для автора темы, вроде, то-же.


Это сообщение отредактировал(а) Ghirik - 28.8.2007, 13:24


--------------------
Отдадим всё клиенту, пускай его машина мучается...

PM MAIL   Вверх
Папараццы
Дата 28.8.2007, 13:38 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 475
Регистрация: 18.9.2006
Где: Баку

Репутация: нет
Всего: нет



 А если убрать <body onload="parent.div1.innerHTML=document.body.innerHTML">  с answer.php ?? Выть уже вызывается функция когда iframe грузит ? т.е. присваивает HTML в div1 ??   


--------------------
/*---------------------------------------------------------------------------------*/
PM MAIL WWW ICQ MSN   Вверх
Ghirik
Дата 28.8.2007, 14:10 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 919
Регистрация: 26.3.2007

Репутация: 13
Всего: 20



Код

<body onload="parent.div1.innerHTML=document.body.innerHTML">  


Эта строчка нужна для IE, IE не понимает "contentDocument". А как обратиться к дочернему документу, по событию загрузки фрейма для IE, я не знаю smile
И всего то....

Да вообщем то, какая разница, все равно для IE и Mozilla синтаксис разный. Если всё писать в событии онлоад фрейма, то будет, опять же, две отдельных строчки.

Сейчас ещё попробую помучать IE....

Это сообщение отредактировал(а) Ghirik - 28.8.2007, 14:17


--------------------
Отдадим всё клиенту, пускай его машина мучается...

PM MAIL   Вверх
Папараццы
Дата 28.8.2007, 15:23 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 475
Регистрация: 18.9.2006
Где: Баку

Репутация: нет
Всего: нет



  И опять виноват Microsoft!!!! На мыло Гейтся!!


--------------------
/*---------------------------------------------------------------------------------*/
PM MAIL WWW ICQ MSN   Вверх
Ghirik
Дата 28.8.2007, 15:31 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 919
Регистрация: 26.3.2007

Репутация: 13
Всего: 20



Вот теперь точно ВСЁ!

Код

<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=windows-1251">
<title>name2</title>
</head>
<body>
<div id=div1></div>
<iframe id=I1 name=I1 style="display: none">
</iframe>
<form method=POST action=answer.php target=I1 enctype=multipart/form-data>
<input type=text name=T1>
<input type=submit value=Отправить name=B1>
</form>
</body>
</html>


answer.php:

Код

<html>
<body onload="parent.document.getElementById('div1').innerHTML=document.body.innerHTML">
<p id=txt>
<?php
print_r($_POST);
?>
</p>
</body>
</html>


Работает везде.

Нужно использовать именно событие onload, загружаемого в фрейм документа.
Использовать событие onload iframe нежелательно. В IE событие onload iframe возникает даже при отсутствии контента.


--------------------
Отдадим всё клиенту, пускай его машина мучается...

PM MAIL   Вверх
Папараццы
Дата 28.8.2007, 16:04 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 475
Регистрация: 18.9.2006
Где: Баку

Репутация: нет
Всего: нет



Вроде все работает! Разобрались вроде ! Спасибо тебе Ghirik, что помог мне !


--------------------
/*---------------------------------------------------------------------------------*/
PM MAIL WWW ICQ MSN   Вверх
Ghirik
Дата 28.8.2007, 16:15 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 919
Регистрация: 26.3.2007

Репутация: 13
Всего: 20



Я и себе помог smile 


--------------------
Отдадим всё клиенту, пускай его машина мучается...

PM MAIL   Вверх
cruelangel
Дата 24.9.2007, 21:17 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 319
Регистрация: 12.9.2007

Репутация: 4
Всего: 8



что-то я сумневаюсь, что ифрейм с дисплей:нон работает везде smile
PM MAIL   Вверх
Ghirik
Дата 24.9.2007, 22:27 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 919
Регистрация: 26.3.2007

Репутация: 13
Всего: 20



Цитата

что-то я сумневаюсь, что ифрейм с дисплей:нон работает везде  


А где не работает? Я смотрел в IE6, Mozilla2 и Optra9,2, везде работает...


--------------------
Отдадим всё клиенту, пускай его машина мучается...

PM MAIL   Вверх
cruelangel
Дата 25.9.2007, 01:28 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 319
Регистрация: 12.9.2007

Репутация: 4
Всего: 8



опера, во всяком случае раньше, ничего не грузила, если не собиралась это показывать...
PM MAIL   Вверх
Ответ в темуСоздание новой темы Создание опроса
Форум для вопросов, которые имеются в справочниках, но их поиск вызвал затруднения, или для разработчика требуется совет или просьба отыскать ошибку. Напоминаем: 1) чётко формулируйте вопрос, 2) приведите пример того, что уже сделано, 3) укажите явно, нужен работающий пример или подсказка о том, где найти информацию.
 
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | JavaScript: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.0920 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.