摘要:本文實例講述了JS實現(xiàn)頁面跳轉(zhuǎn)參數(shù)不丟失的方法。分享給大家供大家參考,具體如下:需求:頁面編輯后,返回列表頁面,參數(shù)不丟失,能夠記住頁數(shù)以及篩選條件。我堅信,不管白貓黑貓,能捉到耗子的就是好貓,當(dāng)然如果能夠高效的,簡單的處理最好。我的思路就是,把列表頁面地址作為參數(shù)傳遞過去。這里就會面臨一個問題,url本身就是由多個參數(shù)組成的,這樣純粹的傳遞,就會出問題,參數(shù)丟失。所以要對url進行加密。esca
本文實例講述了JS實現(xiàn)頁面跳轉(zhuǎn)參數(shù)不丟失的方法。分享給大家供大家參考,具體如下:
需求:頁面編輯后,返回列表頁面,參數(shù)不丟失,能夠記住頁數(shù)以及篩選條件。
我堅信,不管白貓黑貓,能捉到耗子的就是好貓,當(dāng)然如果能夠高效的,簡單的處理最好。
我的思路就是,把列表頁面地址作為參數(shù)傳遞過去。
這里就會面臨一個問題,url本身就是由多個參數(shù)組成的,這樣純粹的傳遞,就會出問題,參數(shù)丟失。
所以要對url進行加密。
escape()、encodeURI()、encodeURIComponent()
JavaScript中有三個可以對字符串編碼的函數(shù),分別是: escape,encodeURI,encodeURIComponent,相應(yīng)3個解碼函數(shù):unescape,decodeURI,decodeURIComponent 。
escape()除了 ASCII 字母、數(shù)字和特定的符號外,對傳進來的字符串全部進行轉(zhuǎn)義編碼,因此如果想對URL編碼,最好不要使用此方法。而encodeURI() 用于編碼整個URI,因為URI中的合法字符都不會被編碼轉(zhuǎn)換。encodeURIComponent方法在編碼單個URIComponent(指請求參數(shù))應(yīng)當(dāng)是最常用的,它可以將參數(shù)中的中文、特殊字符進行轉(zhuǎn)義,而不會影響整個URL。
經(jīng)過測試,發(fā)現(xiàn)encodeURIComponent方法可以很好的解決這個問題。
1.設(shè)置url
// 設(shè)置當(dāng)前url var list_url = '/document/order/default.php?page=' + page_nums + '&'+ $("#form1").serialize(); var e_list_url = encodeURIComponent(list_url); $("#list_url").val(e_list_url);
2.傳遞url
var list_url = $('#list_url').val(); window.location.href='/document/order/view.php?order_id='+order_id+'&action=edit&handler=admin&list_url='+list_url;
3.解析url并跳轉(zhuǎn)
var list_url = '<?php echo $list_url;?>'; d_list_url = decodeURIComponent(list_url); window.location.href = d_list_url;
這樣就能實現(xiàn),參數(shù)不丟失了。主要就是頁碼和篩選條件。
更多關(guān)于JS實現(xiàn)頁面跳轉(zhuǎn)參數(shù)不丟失的方法請關(guān)注PHP中文網(wǎng)(ipnx.cn)其他文章!