在开发过程中经常会遇到各种各样的问题,今天在做一个JSP的页面时,需要使用 url 给 JSP 传递一个对象过去,然后 JSP 使用 java 的语法获取这个对象,之前的观念是先把对象转成字符串,使用 JSON.stringify 的方法,然后进行传递,但这样会有一个字符串拼接的问题,无论是使用双引号拼接还是使用单引号拼接,都会出现问题,最后查询多个资料和翻阅了许许多多的帖子后,最后终于找到了一个放法,使用 encodeURI() 方法,它可以接收一个字符串对象,在 JSP 中就可以使用 JSON.parse() 转会对象。
w3c给出的解释是: encodeURI() 函数可把字符串作为 URI 进行编码。
使用方法:
var eg = {
keyName: 'U_key',
MODULE_CODE: '123'
PRIMARY_KEY: 'abc'
}
var jsonObj = JSON.stringify(eg)
var url = basePath + 'customManage/openListChild.do?TYPE_ID= P11227f338d03&PAPERCODE' + encodeURI(jsonObj)