回覆列表
-
1 # 使用者6479507797303
-
2 # maimi32709
涉及到頁面通訊如果是jsp是當前頁面的子頁面,可以透過parent物件來訪問父級變數/方法,這樣的情況可以在父級用全域性變數存放這個值,比如temp,然後jsp中透過parent.temp來訪問變數如果是跨頁面的話,如果是在同一個域下,可以透過localStorage,sessionStorage,cookie等本地化方法將變數存放進去,然後從jsp中讀出來如果跨域的話,可以透過get/post傳值 例如:sample.jsp?tel=123然後jsp中寫伺服器部分程式碼取出該值,可以將此值拼在js中,例如: var tel="";此方法只適用於tel已經產生值之後開啟目標jsp
題主或許應該換個思路實現下頁面。前端很多看似跳轉到下一頁面的需求其實都可以不跳轉,多個div(一個“頁面”一個div)實現即可,例如:註冊流程、購買流程等頁面這樣實現效果更佳(維護處理更加方便)。回到題主正題:js如何實現傳值到下一頁面?方式有以下幾種:1.cookie, 最傳統、相容性最牛叉的方法,缺點是儲存的容量小,還得注意請求介面時別帶到http head。2.html5 新增的 local Storage,使用起來灰常簡單、方便,就是相容性有點小問題。相容性: 現代瀏覽器(firefox safari chrome opera)都支援,IE8以下(不包括IE8)不支援。3.html5中實現頁面間傳遞值還有另一比較醬油的api:Web Workers。注意!!這貨相容性比local Storage更差, IE 10+才支援,而且這新api也不是像Web Sockets(HTML5 頁面通訊新協議)那樣實現兩個頁面通訊,而是讓另一頁面幫助處理複雜計算。至於,後臺使用session 、臨時資料庫表、Web Sockets什麼的都不在純前端JS範疇了,不說了吧。參考資料:Can I use... Support tables for HTML5, CSS3, etc