我正在尝试创建一个简单地链接回上下文根的按钮。我注意到flex有一个@ContextRoot属性,它似乎只在某些情况下有效。例如,如果我尝试在以下mxml中使用它:
<mx:Button label="Back to Root" click="navigateToURL(new URLRequest(@ContextRoot()), '_parent')"/>我得到以下错误:错误:属性是不可调用的。
我似乎在任何地方都找不到这种技术的解释,还有其他方法吗?
谢谢你的帮助!戴夫
发布于 2010-06-15 04:06:20
感谢http://devgirl.wordpress.com/提供的这个解决方案!我认为它比Application.application.url解决方案更好:
使用HTTPService控件:
<mx:HTTPService id="home" url="@ContextRoot()"/> 然后在Action Script中:
navigateToURL(new URLRequest(home.url),"_parent");就像一种护身符!
发布于 2010-05-14 23:10:41
我发现最干净的方法是在脚本块中使用一个函数,而不是像这样使用@ContextRoot:
private function goBacktoHompage():void
{
baseURL = Application.application.url;
var tempUrl:String = baseURL.substr(7,baseURL.length);
var tempUrlArr:Array = tempUrl.split("/");
var contextRoot:String = tempUrlArr[1];
var u:URLRequest = new URLRequest("/" + contextRoot);
navigateToURL(u,"_parent");
}我假设有一种更简单的方法可以使用@ContextRoot,所以任何其他不使用相对路径的答案都会受到欢迎!
感谢这些网站的帮助:
http://blog.devsandbox.co.uk/?p=174
有关传递参数的Adobe帮助文档
-Dave
https://stackoverflow.com/questions/2830150
复制相似问题