2017-12-26 19 views
0

をパラメータを渡す:は、私はそれがこのように見えるウェブサイトのURLからパラメータを取得しようとURL.TheのウェブサイトのURLをiFrameにするために渡すのiframe URLにウェブサイトのURLから

www.example.com/en/open-account/Redirect?linkID=demo1064&referral_id=0010962 

上記のURLは、2つのパラメータ(のlinkIDを持っており、 referral_id)。もっと多くのパラメータ(2〜8パラメータ)があるかもしれません。それが自動的に生成され、これらのセクションを持っていなければなりません

<iframe frameborder="0" scrolling="no" class="frameboxlive" src="https://login.example.com/demo_signupiframe=1&linkID=demo1064=&referral_id=0010962=&ref= www.example.com/en/open-account/Redirect?linkID=demo1064&referral_id=0010962&clang=en" width="700" height="800" align="center"></iframe> 

のiframe URL:よう のiframe URLは、それが見えます

  1. メインURL:ウェブサイトのURLから来https://login.example.com/demo_signupiframe=1
  2. パラメータ
  3. ウェブサイトのURLを含むパラメータref
  4. 最後に、言語を含むパラメータclang。言語はウェブサイトのURLにありますが、パラメータとしては使用できません。

Javascriptでこれを行うための提案はありますか?前もって感謝します。

答えて

1

はこれを試してみてください:

<iframe frameborder="0" scrolling="no" class="frameboxlive" src=""></iframe> 

<script> 
    var mainUrl = "https://login.example.com/demo_signupiframe=1"; 
    var urlParams = new URLSearchParams(window.location.search); 
    urlParams = urlParams.toString(); 
    var ref = document.URL; 
    var clang = 'clang=' + document.location.pathname.split('/')[1]; 

    var iframeUrl = mainUrl + '&' + urlParams + '&' + urlParams + '&' + ref + '&' + clang; 

    document.getElementsByTagName("iframe")[0].src = iframeUrl ; 

</script> 
+0

このコードは、エッジ以外のすべてのブラウザで機能します。助言がありますか?ありがとうございました。 –

0

あなたは、URLからすべてのクエリ文字列を取得するには、以下のスニペットを使用して操作するとiframeのURLに渡すことができます。

あなたは静的にこの

VARのlinkID = getUrlVars()[ "のlinkID"]のようなものを使用してオブジェクトを検索したい場合は、 var referral_id = getUrlVars()["referral_id"];

function getUrlVars() { 
    var vars = [], hash; 
    var query_string = window.location.search; 
    if (query_string) { 
     var hashes = query_string.slice(1).split('&'); 
     for (var i = 0; i < hashes.length; i++) { 
      hash = hashes[i].split('='); 
      vars[hash[0]] = hash[1]; 
     } 

     return vars; 
    } else { 
     return false; 
    } 
} 

注:取得する前にURLコンポーネントをエンコードしてください。

関連する問題