向flash传递Boolean型参数的问题

liul17 2008-01-14 01:36:41
1。flash里是不是接收的参数全是以字符串型接收的?
2。如何接收一个Boolean型的参数
产生如上问题的原因是:
我通过语句调用flash并向其传递参数,如:
<object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000"
codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=5,0,0,0"
width=500 height=300 id="flash1">
<param name=quality value=high>
<param name=movie value="main.swf">
<param name='flashvars' value='&flashFlag=<%=flag%>'/>
<embed src="main.swf" quality=high width=500 height=300 type="application/x-shockwave-flash" pluginspage="http://www.macromedia.com/shockwave/download/index.cgi?P1_Prod_Version=ShockwaveFlash" name="myFlash" swLiveConnect="true">
</embed>
</object>
注:上面代码是写在jsp里面的,所以通过<%=flag%>传入flash, flag是在jsp里定义的boolean变量,值为true。

传入flash后,我调度输出,flashFlag确实是true,但在flash脚本中的下面语句:
var flashFlag:Boolean;
if (flashFlag== "" || flashFlag== undefined) {
flashFlag= false;
}
if(flashFlag == true){
<语句1>;
}else{
<语句2>;
}
总是执行<语句2>,当我改成下面时就没问题了,因此产生了本帖所提出的问题,flash到底能不能接收Boolean型参数
if(flashFlag == true || flashFlag == "true" ){
<语句1>;
}else{
<语句2>;
}

请大侠请教
...全文
100 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
zys_11122 2008-01-15
  • 打赏
  • 举报
回复
1楼正解,你输出的其实是"true"
maninwater 2008-01-14
  • 打赏
  • 举报
回复
flash直接传进来都是String类型的参数,所以你要想传布尔型变量建议你传0/1好转换,即使强制转换Boolean("false")返回的也是true,如果非要传true和false建议你直接比对字符串好了

2,275

社区成员

发帖
与我相关
我的任务
社区描述
多媒体/设计/Flash/Silverlight 开发 Flash流媒体开发
社区管理员
  • Flash流媒体开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧