try
m.src="http://website/test.asp?a="+ encodeURIComponent( "中文" );

解决方案 »

  1.   

    也不行。
     encodeURIComponent( "中文" )是对字符串进行UTF-8编码了,发到服务器端还要解码,如果不解码就会乱码。出现上面的问题也就是因为默认对URL进行了UTF-8编码,所以乱码。UTF-8编码如果对非中文字符编码是没问题的,如果对中文编码,就会变成3个字节,格式如:%xx%xx%xx,用request对象获取时就乱码。问题的关键在iframe里document.write()的内容,如果拿一个物理存在的文件,内容是document.write()中的内容,让iframe加载,那就没有中文的问题。但我这不能用一个物理存在的文件,服务器端又最好能直接用request对象来获取。有什么办法能使在iframe中document.write()出来的script对象的src属性提交URL时,服务器接收到的不是乱码?谢谢
      

  2.   

    urlEncode();// 编码;
    urlDecode(); // 解码;
      

  3.   

    js有将中文urlEncode()为ISO8859_1的,但要一个ISO8859_1到GBK的对照库,这个对照库约160KB,比我自己的代码大好几倍,页面下载太慢了。