js向action传值乱码_js通过地址栏给action传值(中文乱码全是问号)

js通过地址栏给action传值(中文乱码全是问号)

我从 js 代码中通过地址栏传值给了 action 的相应变量,但是,如果变量值为中文的时候,在 action 中测试输出则为问号

Javascript 是一种由 Netscape 的 LiveScript 发展而来的原型化继承的基于对象的动态类型的区分大小写的客户端脚本语言,主要目的是为了解决服务器端语言,比如 Perl,遗留的速度问题,为客户提供更流畅的浏览效果。

前几天在完成一个 ssh 框架的项目时遇到一个小问题,情况是这样的。

在 action 中定义了私有变量,并提供 get(),set() 方法,js 代码中就应该可以访问它。于是我从 js 代码中通过地址栏传值给了 action 的相应变量,但是,如果变量值为中文的时候,在 action 中测试输出则为 "???",而浏览器地址栏中仍然能显示中文。

我先根据网上一些解答配置了 tomcat 的配置文件,未果。后来想想也许不是什么复杂的问题,应该就是编码问题。我的 myeclipse 和项目的编码都设置为的 "UTF-8"。于是我试着把项目和 myeclipse 编码都设为 "iso8859-1",还是不行。

这样不行,我便采取了更直接的方式,在 action 中把获取的变量值转换一下试试 (假设变量为 string):Stringnewstring=newString(string.getBytes("iso8859-1"));

但是这样还是没有用~~~~~~ 试了很久发现我的想法是对的但是合适的语句应该如下:Stringnewstring=newString(string.getBytes("iso8859-1"),"utf-8");

ps: 我先试着转成 GBK,然后发现字可以显示了,但是没人认识的字。。。果然还是 "iso8859-1" 对中文的支持好啊

来源:

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值