Как заменить HTML-тег в URLRequest Flex 4 / Air - PullRequest
0 голосов
/ 02 марта 2011

Я встраиваю веб-сайт в свое приложение, и Adobe Air не распознает тег HTML разрыва строки в исходном коде (Firefox и Chrome автоматически исправляют ошибку). Я приложил исходный код ниже. Есть ли способ заменить строку с правильным синтаксисом (без косой черты). Я не контролирую сайт, я просто загружаю его в свое приложение, поэтому я не могу просто изменить его в источнике. Я использую объект mx: html и htmlLoader для загрузки URL-адреса.

Сайт Источник:

<ul>
    <li><a href="Rpt_Selection_2.asp?Report=StatusReport/StatusReport.asp">Status Report</a></li>
    <li><a href="Rpt_Selection_2.asp?Report=StatusReport/AlarmsAlerts.asp">Alarm History</a></li>
</ul>

<br/>

<table class="Header" cellspacing="0" cellpadding="0" border="0">
    <tr>
      <td class="HeaderLeft"><img src="Images/Spacer.gif" border="0"></td> 
      <th>List of&nbsp;Alarms for Multiple Groups&nbsp;</th>
      <td class="HeaderRight"><img src="Images/Spacer.gif" border="0"></td>
    </tr>
</table>

mxml Компонент:

<mx:HTML  id="htmlControl" width="100%" height="100%"/>

Скрипт для загрузки URL:

htmlControl.htmlLoader.load(new URLRequest("http://mysite.com/somepage.asp"));

Спасибо.

1 Ответ

1 голос
/ 02 марта 2011

Способ, которым я занимался в прошлом, состоял в том, чтобы использовать URLLoader, чтобы сначала получить содержимое, затем изменить его, а затем установить содержимое в компонент HTML, вызвав myHtmlComponent.htmlLoader.loadString (myModifiedContent)

Надеюсь, это поможет.

РЕДАКТИРОВАТЬ: После прочтения комментария ниже, у вас могут возникнуть проблемы с загрузкой ссылочных сценариев, если они ссылаются на использование относительного URL, а не полного URL. Я исправил это в прошлом, добавив базовый тег, чтобы относительные URL-адреса могли разрешаться правильно. После получения содержимого и перед вызовом myHtmlComponent.htmlLoader.loadString добавьте следующую строку:

myModifiedContent = "<base href='http://mydomain.com/'/>" + myModifiedContent;
...