300字范文,内容丰富有趣,生活中的好帮手!
300字范文 > JS解决url传值出现中文乱码的另类办法【javascript】

JS解决url传值出现中文乱码的另类办法【javascript】

时间:2019-11-15 07:03:15

相关推荐

JS解决url传值出现中文乱码的另类办法【javascript】

web前端|js教程

url,传值,中文乱码

web前端-js教程

在开发web应用时,很多情况都需要进行前后台的数据交互,有时候我们可能需要把前台的中文数据通过URL的方式传递到后台,但此时有个令人头疼的问题,因为Java中网络传输使用的标准字符集是ISO-8859-1,所以在后台用request.getParameter(“message”);获取前台传过来的中文时,得到的还是ISO-8859-1字符集,中文就会出现乱码现象,好多人的解决办法是在前台传递中文之前进行decode,后台再decode一下进行转换,这样感觉很是麻烦,难道就没其他的方式解决吗?

苦思冥想了一下:为什么用表单的方式就可以传递中文,而URL的方式就不行了呢?非得用URL传值的方式才能解决问题吗?这里我想到了动态表单,何不用它来解决呢,示例如下:

假设有如下应用场景:KPI列表页面中,对每个KPI都有生成预警数据的功能,当点击列表中每个KPI生成数据的按钮时,需要把KPI的id和name传递到后台。

前端对应的js方法:

用URL传值的写法:

微信好友检测php源码,ubuntu缩小虚拟磁盘,tomcat下的项目更新,草丛附近爬虫,php怎样实现数据交互,广汉SEOlzw

function createData(indexId,indexName){

window.location.href="catalogAction.do?action=CreateIndexData&catalogId="+indexId+"&catalogName="+indexName+"&random="+Math.random();

}

用这种方法,由于KPI名称大多为中文,在后台接收到的值肯定为乱码。

若用动态生成表单的方式就可以解决:

安卓源码 市场,ubuntu部署jar文件,tomcat是什么开发的,如何下载 爬虫,php实现容器,seo跟电商哪个比较好lzw

function createData(indexId,indexName){

var urlStr = "catalogAction.do?action=CreateIndexData&PcatalogId=&catalogId="+indexId+"&random="+Math.random();

var f= document.createElement(form);

f.action = urlStr;

f.method = post;

document.body.appendChild(f);

var temp=document.createElement(input);

temp.type= hidden;

temp.value=indexName;

temp.name=catalogName;

f.appendChild(temp);

f.submit();

}

对中文字段用form的方式提交过去,不是中文的仍然用URL传,这样就轻松解决了向后台传递中文出现乱码的情况。

信用盘源码演示,vscode 生成安卓app,ubuntu依赖问题,tomcat用来做什么,爬虫翻页软件,php 多线程处理,专业seo费用是多少,免费php加密网站,行业模板 梦织lzw

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。