2015-10-12 117 views
0

不知道這是否應該在JavaScript或其他內容中完成。基本上,我有一個小測驗類型的東西,所有的問題都在一個頁面上。我有一個ajax函數來檢查它是什麼問題,如果它是最後一個問題,它會將用戶重定向到一個新頁面,例如JavaScript從網址獲取參數

if(totalScore <= 10) { 
    $.ajax({ 
     method: "POST", 
     url: "php/handleData.php", 
     data: { answers: ansArray, page: window.location.href, pt: "aa" } 
    }).done(function(response) { 
     window.location.replace("page2.html" + '?le=' + le + '&ch=' + ch); 
    }).fail(function(jqXHR, textStatus ) { 
     console.log("Request failed: " + textStatus); 
     window.location.replace("page2.html" + '?le=' + le + '&ch=' + ch); 
    }); 
    return false; 
} 

如您所見,重定向還包括一些附加參數。因此,當我重定向,我在頁面上像

page2.html?LE = 1 & CH = 2

現在我不必然需要在這個網址這些PARAMS,但它是我可以考慮讓他們轉到第2頁的唯一方法。第2頁有一個按鈕就像

<a href="www.link1.com>" target="_blank" class="btn btn-primary" role="button">Visit link1.com ></a> 

這是在這個href中,我需要params le和ch被注入。

我該怎麼做呢?

感謝

+0

見https://medialize.github.io/URI.js/docs.html#search-set – haim770

+0

那麼你可以在'localStorage'中設置'le'和'ch',當你在page2.html中時,可以從那裏訪問。 –

回答

0

與jQuery上Page2.html你可以這樣做:

$(document).ready(function(){ 

    function getParameterByName(name) { 
     name = name.replace(/[\[]/, "\\[").replace(/[\]]/, "\\]"); 
     var regex = new RegExp("[\\?&]" + name + "=([^&#]*)"), 
      results = regex.exec(location.search); 
     return results === null ? "" : decodeURIComponent(results[1].replace(/\+/g, " ")); 
    } 

    var le_val = getParameterByName("le"); 
    var ch_val = getParameterByName("ch"); 

    $("a.btn.btn-primary").attr("href","www.link1.com?le="+le_val+"&ch="+ch_val); 
});