您好我想在flex的textarea框中显示一些网站的textcontent。
<?xml version="1.0" encoding="utf-8"?>
import mx.managers.PopUpManager;
import mx.core.Application;
import flash.net.URLLoader;
import mx.rpc.events.ResultEvent;
import mx.controls.Text;
import mx.controls.Alert;
[Bindable]
private var xmlText:String;
private function serviceResult(event:ResultEvent):void
{
myTextArea.text = event.result.contents.content;
}
private function init():void{
listContents.send();
}
]]>
</mx:Script>
<mx:HTTPService id="listContents" url="http://theurl.com" result="serviceResult(event)"/>
<mx:TextArea id="myTextArea" text="{xmlText}" />
任何想法?
答案 0 :(得分:4)
我已经使用URLLoader和URLRequest这样做了b4但是使用了Flash CS3 因此在使用这个概念的flex尝试中也是一样的想法
public function sendSQLQuery(aspURL:String, variables:URLVariables, returnSQLXMLCallback:Function):void
{
var myXMLURL:URLRequest = new URLRequest(aspURL);
myXMLURL.data = variables;
myXMLURL.method = URLRequestMethod.POST;
var myLoader:URLLoader = new URLLoader();
//Define the event handlers to listen for success and failure
myLoader.addEventListener ( IOErrorEvent.IO_ERROR, handleIOError );
myLoader.addEventListener ( HTTPStatusEvent.HTTP_STATUS, handleHttpStatus );
myLoader.addEventListener ( SecurityErrorEvent.SECURITY_ERROR, handleSecurityError );
myLoader.dataFormat = URLLoaderDataFormat.TEXT;
myLoader.addEventListener("complete", returnSQLXMLCallback);
myLoader.load(myXMLURL);
}
然后我以XML格式接收返回的页面,然后解析它
答案 1 :(得分:1)
简写方式:
<mx:TextArea htmlText="{xmlText}" />
<mx:String id="xmlText" source="data.xml" />
答案 2 :(得分:0)
尝试使用TextArea控件的.htmlText属性。从Flex文档中可以看到这里:
http://www.adobe.com/livedocs/flex/3/langref/mx/controls/TextArea.html#htmlText
这应该可行,但请记住,Flex控件的HTML呈现功能仍然非常简陋;你不会在样式或格式方面受到太多影响(因此关于这个主题的StackOverflow上的问题数量),但基础应该适用于你。