1,AS3中, AS调用JS中的方法:
a, 在AS中使用类ExternalInterface中的方法 ExternalInterface.call("javaScriptMethod")即可;
b, 如果在JS的方法中带有参数,那么可以在AS中传递参数,具体如下:
在AS中的引用:ExternalInterface.call("javaScriptMethod",param1,param2);
在JS中的定义:function javaScriptMethod(param1,param2){...}
2,Flex与Java的交互
--------------------------------------------------
Flex前端与服务器端(Java)进行数据交互,主要3种方法:
I, Using HTTPService components
a, 服务器端 <---> Flex前台
查询出来的结果组织成xml文件传给Flex应用(E4X是AS3中新的XML处理方法).
注意: 可以在mxml文件中指定一HTTPService组件,如:<mx:HTTPService id="srv"/>,当服务器端数据传递给Flex应用前台时,可以指定该HTTPService组件的url属性为能返回xml数据的url地址(当然也不一定要是xml形式的数据格式),可以是jsp,servlet等.如:srv.url="index.jsp",或 srv.url = "
http://localhost/testFJ/login";
当需要将Flex前台参数传递给服务器端时,方法很多,如:利用URLVariables:
srv.url = "
http://localhost/testFJ/login";
var params:URLVariables = new URLVariables();
params.username = usr.text;
params.password = pwd.text;
srv.send(params);
另一种将Flex前台参数传递给服务器端的方法是通过<mx:request>来完成:
<mx:HTTPService id="srv" url="
http://localhost/testFJ/login">
<mx:request xmlns="">
<username>{usr.text}</username>
<password>{pwd.text}</password>
</mx:request>
</mx:HTTPService>
<mx:Button label="提交" click="srv.send();"/>
II, Using WebService components
III, Using RemoteObject components