一次性解决HTML向Flash传递参数时的乱码问题

今天下午想使用HTML向Flash传递两个参数,一直遇到错误。这里总结一下:

错误一:

<param name="flashvars" value=‘&symc=unit1.mp3&lrcmc=unit1.lrc‘/>

这样传进去得到的结果是1.3和1.

错误二:

<param name="flashvars" value=encodeURIComponent(‘&symc=unit1.mp3&lrcmc=unit1.lrc‘)/>

得到的结果与上面相同。

后来高人传授了中英文都支持的方法,这里记录下来:

方法一:(注意是&amp;)

<param name="flashvars" value=‘&amp;symc=unit1.mp3&amp;lrcmc=unit1.lrc‘/>

<param name="flashvars" value=‘&amp;symc=中国人.mp3&amp;lrcmc=中国人.lrc‘/>

得到的结果是:

unit1.mp3和unit1.lrc

中国人.mp3和中国人.lrc

方法二:

http://www.hds8.com/mp3/SimpleMP3Reader.swf?&symc=unit1.mp3&lrcmc=unit1.lrc

http://www.hds8.com/mp3/SimpleMP3Reader.swf?&symc=中国人.mp3&lrcmc=中国人.lrc

得到的结果是unit1.mp3和unit1.lrc

得到的结果是:

unit1.mp3和unit1.lrc

中国人.mp3和中国人.lrc

另外在as3中的接收数据程序是这样写的:

var flashvars:Object = root.loaderInfo.parameters;

symc_txt.text=flashvars["symc"];

rjmc_txt.text=flashvars["lrcmc"];

时间: 2024-07-29 18:25:10

一次性解决HTML向Flash传递参数时的乱码问题的相关文章

解决浏览器向服务器传递参数时中文乱码问题

解决Get方式的中文参数的乱码问题: 方式1: 前提是Tomcat是默认的配置: key = new String(key.getBytes("iso8859-1"), "utf-8"); 方式2: 在Tomcat的server.xml中设置: <Connector port="8080" protocol="HTTP/1.1" connectionTimeout="20000" redirectPo

分页技术框架(Pager-taglib)学习三(pager-taglib中传递参数时中文乱码问题)

一.问题描述 问题: 使用<pg:param name="key" />标签传递中文参数时,会有乱码. 原因: 因为它默认是用gb2312来对添加的参数进行编码,如果你的过滤器.jsp页面都是采用的gb2312就没有什么问题,如果你采用的是utf-8来编码,那么中文参数传递过程中就会出现乱码导致无法解析.   二.问题解决方法 网上有很多解决办法,重新修改编译源代码是一种方法: 在com\jsptags\navigation\pager下面的PagerTag的addPara

JS URL传递中文参数时出现乱码的处理

原文:JS URL传递中文参数时出现乱码的处理 在浏览器中显示的地址是这样的: 但是按F12调试的时候的地址却变化掉了: 这个肯定是是因为浏览器对url路径默认编码了.这个问题是在我们去取值的时候,得到的就是后面那一大串稀奇古怪的东西.得不到我们想要的值.怎么办呢?这里写出来的只是自己的解决方法,也许不能通用,跟大家分享下,有更好的方法,告我一声.      //得到url中的值 function request(paras){ var url = location.href; var para

转载:CI中URI传递参数时,出现:The URI you submitted has disallowed characters.错误。

CI中URI传递参数时,出现:The URI you submitted has disallowed characters.错误.原因:这是由于uri中存在CI不允许的字符. 解决办法: 在config/config.php文件中,找到 复制代码 代码如下: $config['permitted_uri_chars'] = 'a-z 0-9~%.:_/-i'; 在里面添加允许的字符.如我需要添加@符号,则可以这样: 复制代码 代码如下: $config['permitted_uri_chars

js函数传递参数时,如果是路径类型的参数,里边包含:&#39;\&#39;字符报错

在函数中,传递的参数中有“\”字符,js会将它默认为转义字符串,如果没有出现与他匹配的转义字符串,就会缺失,例如: 将这样的一个字符串作为一个参数:C:\Program Files (x86)\MySQL\MySQL Server 5.7\data\ 传递到函数里边的值就会被默认转化为:C:Program Files (x86)MySQLMySQL Server 5.7data 如果要实现这个参数的精确传递,就需要将字符串进行处理,一般会有两种方式: ①:将字符串里边的 ‘\’ 字符替换成 ‘/

ASP.NET使用Jquery-Ajax向ashx传递参数中文出现乱码

今天遇到个问题,IE11下Jquery-Ajax向ashx传递参数中文出现乱码,但在谷歌.火狐.360等浏览器中没有乱码的问题,百度了好久最后发现使用escape()对参数值进行处理就可以了: 参考代码: 1 function SetGoodsName() { 2 3 $("input[id$='GoodsName']").val(val); 4 5 $.ajax({ 6 7 type: "get", 8 9 url: "../ashx/GetConfig

解决JS在url中传递参数时参数包含中文乱码的问题

需要经过两次encodeURI()编码和两次decodeURI()解码, 使用encodeURI()编码时, var searchType = $("#type_select option:selected").val();//"基地动态" var searchContent = $("#search_val").val();//"aaaa" var url = encodeURI("TextSearchDetail

解决Angular的$http传递参数后台无法接受的问题

如果我们像往常一样使用jq中的$.ajax方法,那代码应该是: $.ajax({ method:'post', url:'url.jsp', data:{ name:$('#id').val() } }) .success(function(){ //...... }) 再来看一下$http,如果按照上面的格式,是行不通的.我们需要一些改变,将传递给后台的data改为字符串拼接的形式,并且对头部的属性进行一些改变. HTML代码: <div ng-controller="ajaxContr

const char* to char*(当函数传递参数时)

来自 https://blog.csdn.net/rongrongyaofeiqi/article/details/52442169 https://blog.csdn.net/hebbely/article/details/79577880 简述: 1) char*转string:可以直接赋值. 2) char[]转string:可以直接赋值. 3) char*转char[]:不能直接赋值,可以循环char*字符串逐个字符赋值,也可以使用strcpy_s等函数. 4) string转char[