js获取中文参数跳转时乱码

JavaScript019

js获取中文参数跳转时乱码,第1张

那不叫乱码,而是url编码,js本身就是读取url编码的

对于js获取url的中文可以尝试用escape() encodeURI() encodeURIComponent() decodeURI()

来使js停止或者转换url编码

js中文乱码解决办法:设置charset=utf-8,完成。

①.js 文件中文显示乱码Javascript文件XX.js编辑保存时有一种编码方案(如GBK)当打开文件的时候所用的编码(如UTF-8)和保存时的编码方案不一致时,则会出现中文显示乱码。

解决方案:

(1)用编辑器打开浏览的时候,选择和原文件编码(如GBK)一致的编码方式查看,则不会出现乱码

(2)在eclipse中的package explorer中选中乱码的XX.js,右键菜单中选择properties,在Text file encoding中选择与XX.js编辑保存时的编码(如GBK),则可以正常显示。

②网站页面中JavaScript中中文字段乱码 在eclipse或者编辑器中XX.js中中文显示正常,在页面调用XX.js,执行后页面结果中中文字段显示乱码。

解决方案: 在引用XX.js的页面上“显示”加上XX.js文件的编码方式,使之与XX.js文件的本身的编码方式(如GBK)保持一致。<scripttype="text/javascript" language="JavaScript" src="/js/XX.js" charset=“GBK” </script建议:

1)在用Eclipse或者Myeclipse新建XX.js,进行编辑时,建议先将Textfile encoding改为UTF-8,然后进行编辑保存。

2)用文本文档或者其他编辑器编辑保存XX.js,建议以UTF-8的编码方式保存。

3)在引用XX.js的页面上“显示”加上XX.js文件的编码方式UTF-8。<scripttype="text/javascript" language="JavaScript" src="/js/XX.js".

GBK与UTF-8的转码:

iconv("gbk","utf-8","php中文转码")//把中文gbk编码转为utf8

iconv("utf-8","gbk","php中文转码")//把中文utf8编码转为gbk

一:Js的Url中传递中文参数乱码问题,重点:encodeURI编码,decodeURI解码:

1.传参页面

Javascript代码:<script type=”text/javascript”>// <![CDATA[

function send(){

var url = "test01.html"

var userName = $("#userName").html()

window.open(encodeURI(url + "?userName=" + userName))}

// ]]>

</script>

2. 接收参数页面:test02.html

<script>

var urlinfo = window.location.href//获取url

var userName = urlinfo.split(“?”)[1].split(“=”)[1]//拆分url得到”=”後面的参数

$(“#userName”).html(decodeURI(userName))

</script>

二:如何获取Url“?”后,“=”的参数值:

A.首先用window.location.href获取到全部url值。

B.用split截取“?”后的全部

C.split(“?”)后面的[1]内数字,默认从0开始计算