Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
Форум программистов > JavaScript: Общие вопросы > Прочитать xml из iframe (ie) |
Автор: Onis 16.6.2009, 21:11 | ||||
Привет винград. Есть фрейм на который у различных форм установлен target. На событие фрейма onload срабатывает метод который считывает ответ от сервера, ответ естественно в формaте xml. В Opera, FF, Chrome всё работает. Но ишак (что шестой, что восьмой) не хочет воспринемать информацию в фрейма как XML. Ответ от сервера идет с заголовком "Content-type: text/xml; charset=UTF-8". Если ставлю только XML то при загрузке фрейма всплывает окно с предложением сохранить файл на диске, в сохраненном файле верный XML ответ. Пример ответа в дебагере FF:
Деббагер IE8:
Что делать? Что делать? |
Автор: Astraller 17.6.2009, 09:20 |
В принципе логично ![]() ИМХО: вариант решения это обмен с сервером через Ajax. |
Автор: Aliance 17.6.2009, 09:28 | ||
покажи его код |
Автор: Onis 17.6.2009, 16:54 | ||||||
Astraller, Эту фишку я использую для "асинхронной" загрузки файлов, ajax исключен. Aliance, Я написал такую функцию:
Т.к. у меня большинство ответов однообразны есть еще такая функция:
Немного кривовато но это наброски. Aliance, Сам метод:
|
Автор: WIPS 17.6.2009, 17:46 | ||
А если просто для IE спецобработку написать: 1. Сначала вырезаем все теги кроме <iframe> регуляркой, таким образом избавляемся от HTML; 2. Заменяем ">" и "<" на "<" и ">" - получаем строку с XML; 3. Потом используем http://msdn.microsoft.com/en-us/library/system.xml.xmldocument.aspx чтобы распарсить получившийся текст. Типа
|
Автор: Onis 17.6.2009, 18:05 |
WIPS, Спасибо за идею, сегодня попробую и отпишусь. |
Автор: Onis 17.6.2009, 18:30 |
Извините за тупой вопрос но как содержимое фрейма заставить воспринимать как текст? Чтобы работать с ним регулярками. |
Автор: Ghirik 17.6.2009, 22:43 | ||
раньше так былонеправильно. IE воспринимет нормально только событие онлоад загружаемого в фрейм документа. возможно от того неправильная трактовка формата файла. http://forum.vingrad.ru/index.php?showtopic=169845&view=findpost&p=1239869 |
Автор: Ghirik 17.6.2009, 23:36 | ||
Я уже больше года не занимаюсь javascript-ом, потому не очень помню. Сегодня случайно здесь попал. Вроде делали так responseText. Но умные люди говорили "Незя!", позже придут, расскажут... ![]() |
Автор: WIPS 18.6.2009, 17:16 | ||
3-и магических способа http://xpoint.ru/forums/programming/javascript/misc/thread/40754.xhtml:
|
Автор: Onis 20.6.2009, 02:19 | ||
Ух. Спасибо товарищи, я даже и не думал что смогу для IE исправить эту фичу. Сделал вот такую вставку:
Еще раз спасибо, сам бы не додумался. |