1. 程式人生 > >JS使用URL傳遞 物件引數

JS使用URL傳遞 物件引數

在開發過程中經常會遇到各種各樣的問題,今天在做一個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)