2017-07-31 6 views
0

[OK]を私は、彼らは、コードが正常に動作しますが、今前のURLにリダイレクトボタンをバックアップするのParamentsを追加

をバックボタンをクリックしたときに、私は他のページに私の現在のページ上のユーザーをリダイレクトすることができますこのコードを持っているので、Iたとえば、前のページのURLパラメータをリダイレクトされたページに渡したいとします。私たちは、ユーザが上にあるメインページがwww.example.com/ready&val=1&base=2&timeid=3&rfid=4

であると言うことができます私は& valのユーザーがされているドメインの末尾に渡さ= 1 &ベース= 2 & TIMEID = 3 & RFID = 4をしたいと思います彼らは、ユーザーが、私は&val=1&base=2&timeid=3&rfid=4がなりたいと、それの終わりでしょうwww.example.com/timeために取得

<script type="text/javascript"> 
    !function(){ 
    var c_link = "www.example.com/time"; 
    var t;    
    try{ 
     for(t=0;10>t;++t)history.pushState({},"","#"); 
     onpopstate=function(t){t.state&&location.replace(c_link)}} 
    catch(o){} 
    }(); 
</script> 

戻る]ボタンをクリックしたときにリダイレクト。

+0

戻るボタンは、Webブラウザの履歴に記録されているものでのみ機能します。ウェブサイトがそれを操作することができれば、重大なセキュリティ上の懸念が生じるでしょう。実行可能なハイジャックをイメージします。 – Difster

答えて

1
var c_link = "www.example.com/time&val=1&base=2&timeid=3&rfid=4"; 

URL自体で値を確認してください。

+0

これらのパラメータは静的ではないことがあります。だから毎回ユーザーが別のページにアクセスするたびに – 4DAWIN

+0

現在のURLからパラメータを取得してリダイレクトされたURLに追加したい – 4DAWIN

+0

動的な値を追加できるスクリプト自体。そしてあなたのサーバーサイドの言語は何ですか? –

0

IE5以前のバージョンではサポートされていないため、HTML5 history.pushStateは使用しません。しかし、私はあなたにもっと良い解決策を与えることができます。 sessionStorageperformance.navigation.typeを使用できます。


sessionStoragelocalStorageなどのストレージタイプですが、それは現在のタブのみのためにあなたのデータを保存します。

このようにセッションストレージを使用できます。

sessionStorage.setItem('key', 'value'); //saves the value 
sessionStorage.getItem('key'); //gets the saved value 

performance.navigation.typeブラウザは、ユーザーのナビゲーション情報を保持する変数です。私たちは簡単にあなたの問題を解決することができ、上記の情報では

if(performance.navigation.type == 2){ 
    //User is coming with back button 
} 

。次のページ

var values = { 
    val: 1, 
    base: 2, 
    timeid: 3, 
    rfid: 4 
} 
sessionStorage.setItem('returnData', JSON.stringify(values)) 

スクリプトは、ここに私たちのメインページです。

if(performance.navigation.type == 2){ 
    var backValues = JSON.parse(sessionStorage.getItem('returnData')); 
    //Do whatever you need with backValues 
} 
関連する問題