提问者:小点点

Flex 4.5中navigatetoURL的修改-不工作


也许你们都知道GoogleChrome和Safari在使用navigatetoURL时遇到的问题。它只在IE中工作。因此,我从一个论坛收集了以下代码。代码是html文件中的javascript函数。Flex中还有另一个函数,单击按钮时调用。部分代码如下:

variables.pmsg1 = xml_langue.msg1;
variables.pmsg2 = xml_langue.msg2;
variables.pmsg3 = xml_langue.msg3;
variables.pmsg4 = xml_langue.msg4;
variables.ppaytomode = parentApp.PAYTOMODE;
var request:URLRequest = new URLRequest(dir_web);
request.data = variables;
request.method = "GET";
//navigateToURL(request,"_blank");
postXMLPageRequest(variables, request.toString(), '_blank'); // HERE I AM CALLING THE FLEX FUNCTION

FLEX功能如下:

公共函数postXMLPageRequest(数据:对象,页面URL:String,窗口:String=null):void{if(外部接口

JAVASCRIPT函数(可在html文件中找到)如下:

函数postXMLPageRequest(url, xmlString,目标,方法){方法=方法||"POST";目标=目标||"_blank";

然而,当我单击调用postXMLPageRequest函数的按钮时,没有任何东西被执行

谢谢。


共1个答案

匿名用户

我马上看到了三个问题。首先,使用以下方法调用flex函数

postXMLPageRequest(变量,request.toString(),'u blank');

第二个问题是javascript中存在语法错误。您有一个双引号和一个单引号,而不是一对引号

HiddenField.set属性(name,'xmlString);

第三,在对flex方法的调用中指出要执行GET请求。但是,您实际上从未将方法类型字符串传递到javascript中。如果希望执行get,则需要将“get”作为外部接口调用的第四个参数传递。否则它将默认为POST。

希望有帮助。