powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / HTML, JavaScript, VBScript, CSS [игнор отключен] [закрыт для гостей] / document && IE
8 сообщений из 8, страница 1 из 1
document && IE
    #35153714
mrJust
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Добрый день.
Наткнулся на проблему/фичу в IE:
есть iframe, есть базовая страница. Пытаюсь элемент из базовой страницы запихнуть в iframe. В IE валится ошибка. Я подразумеваю, из-за того, что элемент создан не в iframe. Привожу банальный пример:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
var oIFrame = document.getElementById('my_iframe');
var d = oIFrame.contentWindow || oIFrame.contentDocument;
if (d.document)
	d = d.document;
alert(d);
var oBody = d.body;

oBody.appendChild(d.createTextNode('some text'));

// failed in IE
//oBody.appendChild(document.createTextNode('some text'));
Мне нужно переместить из базовой страницы элемент file в iframe.
что можно предпринять чтобы последняя запись заработала под IE?
...
Рейтинг: 0 / 0
document && IE
    #35153986
apapacy
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Если Вам нужно переместить элемент input file в iframe для фоновой отправки на сервер -
то в можно вообще ничего не перемещать в это iframe.
Вы создаете пустой невидимый фрейм с name="some_name" и на форме, которая расположена
в основном фрейме дать target="some_frame". Загрузка пойдет без обновления сраницы во внутренний фрейм. Если получится - расскажите. Я сам upload не занимаюсь.
...
Рейтинг: 0 / 0
document && IE
    #35154589
LINUXER
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
...
Рейтинг: 0 / 0
document && IE
    #35155467
mrJust
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
->apapacy
Спасибо, но к сожалению при такой реализации интерфейс подвисает до тех пор, пока не придет ответ с сервера.
Я так понимаю отправку формы без подвисания пользовательского интерфейса необходимо делать в новом объекте window - будь то новое окно (простейший вариант), либо скрытый ифрейм.
...
Рейтинг: 0 / 0
document && IE
    #35156424
apapacy
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
В библиотеках есть реализации, но нет пока желания у меня разобраться. (Код в тех что я посмотрел на первый случай довольно запутанный)

Можно попробовать вот так прямо генерить iframe. (Фича в src iframe).
Аналогично можно с iframe работать и document.createElement("iframe").src="..."

Код: plaintext
1.
2.
3.
4.
<iframe id=my_iframe border= 0  width= 100  height= 20  scrolling=no 
src="javascript:document.write('<form><input type=file></form>')" >
</iframe>

...
Рейтинг: 0 / 0
document && IE
    #35156480
apapacy
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Посмотрел ExtJS - там делается то в стиле 1-го (вчерагшнего варианта)
...
Рейтинг: 0 / 0
document && IE
    #35157467
mrJust
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Делаю по примеру gmail:
для IE - создаю ифрейм, пихаю туда форму с "<input type='file'>", делаю программный click() по файлу.
для остальных вызвать программный клик по полю такого типа невозможно, поэтому при событии "change" приходится перемещать это поле из формы в iframe, а в форму генерить новое такое же поле, только пустое (ну это на случай, если нужно несколько файлов отправлять). Вот такой вот изврат, господа.
...
Рейтинг: 0 / 0
document && IE
    #35159189
apapacy
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
http://www.webtoolkit.info/ajax-file-upload.html Вот полный пример от gmail
Сорри не получилось с первого раза
...
Рейтинг: 0 / 0
8 сообщений из 8, страница 1 из 1
Форумы / HTML, JavaScript, VBScript, CSS [игнор отключен] [закрыт для гостей] / document && IE
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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