JS中跳轉(zhuǎn)傳參的幾種常用方法總結(jié)
在JavaScript中,頁(yè)面跳轉(zhuǎn)并傳遞參數(shù)主要有以下幾種方法:
1. 使用URL的查詢(xún)字符串
這是最常見(jiàn)的方法,你可以在URL后面添加查詢(xún)字符串來(lái)傳遞參數(shù)。查詢(xún)字符串以?開(kāi)始,參數(shù)之間用&分隔。
例如:
window.location.;
在接收頁(yè)面,你可以使用window.location.search來(lái)獲取查詢(xún)字符串,然后解析它來(lái)獲取參數(shù)。
2. 使用HTML表單
當(dāng)提交HTML表單時(shí),瀏覽器會(huì)向表單的action屬性指定的URL發(fā)送一個(gè)GET或POST請(qǐng)求,并將表單字段作為參數(shù)傳遞。
例如:
<form action="http://example.com/page" method="get"> <input type="text" name="param1" value="value1"> <input type="text" name="param2" value="value2"> <input type="submit" value="Submit"> </form>
提交表單后,瀏覽器會(huì)跳轉(zhuǎn)到 http://example.com/page?param1=value1¶m2=value2。
3. 使用HTML5的History API
HTML5引入了History API,允許你更靈活地操作瀏覽器的歷史記錄。你可以使用history.pushState()或history.replaceState()方法來(lái)添加或修改歷史記錄條目,而不會(huì)重新加載頁(yè)面。然后,你可以使用popstate事件來(lái)監(jiān)聽(tīng)歷史記錄的變化。
雖然History API本身并不直接支持參數(shù)傳遞,但你可以將參數(shù)編碼到狀態(tài)對(duì)象中,或者將它們存儲(chǔ)在本地存儲(chǔ)(如localStorage或sessionStorage)中,并在需要時(shí)檢索它們。
4. 使用第三方庫(kù)或框架
如果你使用的是某個(gè)JavaScript框架(如React、Vue或Angular),那么該框架可能提供了自己的導(dǎo)航和參數(shù)傳遞機(jī)制。此外,還有一些第三方庫(kù)(如react-router、vue-router等)專(zhuān)門(mén)用于處理前端路由和參數(shù)傳遞。
請(qǐng)注意,選擇哪種方法取決于你的具體需求和使用的技術(shù)棧。對(duì)于簡(jiǎn)單的頁(yè)面跳轉(zhuǎn)和參數(shù)傳遞,使用URL的查詢(xún)字符串可能就足夠了。然而,對(duì)于更復(fù)雜的應(yīng)用程序,使用HTML5的History API或框架提供的機(jī)制可能更為合適。
附:返回上一頁(yè)
1、在原來(lái)的窗體中直接跳轉(zhuǎn)用
- window.location.href="test.html";
- 2、返回上一頁(yè)原頁(yè)面中的表單中的數(shù)據(jù)會(huì)丟失
- window.history.go(-1);
- 3、返回上一頁(yè)原頁(yè)面 表單中的內(nèi)容會(huì)保留
- window.history.back();
實(shí)例:
1、
<input type=button value=刷新 onclick="window.location.reload()"> <input type=button value=前進(jìn) onclick="window.history.go(1)"> <input type=button value=后退 onclick="window.history.go(-1)"> <input type=button value=前進(jìn) onclick="window.history.forward()"> <input type=button value=后退 onclick="window.history.back()">
2、
<a href="javascript:history.go(-1)">返回上一頁(yè)</a> <a href="javascript:location.reload()">刷新當(dāng)前頁(yè)面</a> <a href="javascript:" onclick="history.go(-2); ">返回前兩頁(yè)</a> <a href="javascript:" onclick="self.location=document.referrer;">返回上一頁(yè)并刷新</a> <a href="javascript:" onclick="history.back(); ">返回上一頁(yè)</a>
總結(jié)
到此這篇關(guān)于JS中跳轉(zhuǎn)傳參的幾種常用方法的文章就介紹到這了,更多相關(guān)JS跳轉(zhuǎn)傳參方法內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
使用javascript實(shí)現(xiàn)雪花飄落的效果
本文主要介紹了使用javascript實(shí)現(xiàn)雪花飄落的特效,雖然網(wǎng)上有很多,不過(guò)都是比較陳舊了,兼容性不是太好,于是動(dòng)手寫(xiě)一個(gè),把思路和實(shí)現(xiàn)代碼都分享給大家。2015-01-01
javascript小組件 原生table排序表格腳本(兼容ie firefox opera chrome)
javascript小組件 原生table排序表格腳本 兼容ie firefox opera chrome,需要的朋友可以參考下2012-07-07
50道JavaScript高頻面試題及答案總結(jié)大全
這篇文章主要介紹了50道JavaScript高頻面試題及答案總結(jié)的相關(guān)資料,文中包括基礎(chǔ)概念與數(shù)據(jù)類(lèi)型、原型與繼承、函數(shù)與this、事件循環(huán)、Promise、ES6+新特性、DOM與BOM、性能與安全、算法與數(shù)據(jù)結(jié)構(gòu)、瀏覽器相關(guān)等多個(gè)方面,需要的朋友可以參考下2026-01-01
JavaScript的基礎(chǔ)語(yǔ)法和數(shù)據(jù)類(lèi)型詳解
這篇文章主要介紹了JavaScript的基礎(chǔ)語(yǔ)法和數(shù)據(jù)類(lèi)型,保姆級(jí)的詳細(xì)教程,萬(wàn)字長(zhǎng)文詳細(xì)的列出了JavaScript的各種語(yǔ)法,建議收藏系列,希望可以有所幫助2021-09-09
關(guān)于js對(duì)textarea換行符的處理方法淺析
這篇文章主要給大家介紹了關(guān)于js對(duì)textarea換行符的處理方法的相關(guān)資料,文中通過(guò)示例代碼介紹地方非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2018-08-08
JavaScript暫時(shí)性死區(qū)以及函數(shù)作用域
這篇文章主要為大家介紹了JavaScript暫時(shí)性死區(qū)以及函數(shù)作用域示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2023-07-07
thinkjs微信中控之微信鑒權(quán)登陸的實(shí)現(xiàn)代碼
這篇文章主要介紹了thinkjs微信中控之微信鑒權(quán)登陸的實(shí)現(xiàn)代碼,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2019-08-08

