我有以下幾點:如何在jquery ready函數中獲取URL參數?
$(document).ready(function() {
window.location.href='http://target.SchoolID/set?text=';
});
因此,如果有人使用URL等進入到一個頁面,上面提到的代碼:
Somepage.php ID = ABC123
我想要的文字變量在就緒函數讀取:abc123
任何想法?
我有以下幾點:如何在jquery ready函數中獲取URL參數?
$(document).ready(function() {
window.location.href='http://target.SchoolID/set?text=';
});
因此,如果有人使用URL等進入到一個頁面,上面提到的代碼:
Somepage.php ID = ABC123
我想要的文字變量在就緒函數讀取:abc123
任何想法?
你不需要jQuery。你可以用純JS
function getParameterByName(name) //courtesy Artem
{
name = name.replace(/[\[]/,"\\\[").replace(/[\]]/,"\\\]");
var regexS = "[\\?&]"+name+"=([^&#]*)";
var regex = new RegExp(regexS);
var results = regex.exec(window.location.href);
if(results == null)
return "";
else
return decodeURIComponent(results[1].replace(/\+/g, " "));
}
做到這一點,那麼你可以得到的查詢字符串值是這樣的:
alert(getParameterByName('text'));
也看看這裏的其他方式和插件:How can I get query string values in JavaScript?
檢查回答這個問題: How can I get query string values in JavaScript?
那個'會給你查詢字符串的id參數的值。
那麼你可以這樣做:
$(document).ready(function() {
var theId = getParameterByName(id)
var newPath = 'http://target.SchoolID/set?text=' + theId
window.location.href=newPath;
});
爲了幫助那些希望人們在我即將有多個變量,並加強在此莫恩的答案是多個變量的代碼:
function getParameterByName(name) //courtesy Artem
{
name = name.replace(/[\[]/,"\\\[").replace(/[\]]/,"\\\]");
var regexS = "[\\?&]"+name+"=([^&#]*)";
var regex = new RegExp(regexS);
var results = regex.exec(window.location.href);
if(results == null)
return "";
else
{
if ((results[1].indexOf('?'))>0)
return decodeURIComponent(results[1].substring(0,results[1].indexOf('?')).replace(/\+/g, " "));
else
return decodeURIComponent(results[1].replace(/\+/g, " "));
}
}
增加了另一個答案如果你覺得它更新你的答案,我會刪除我的。感謝您的幫助代碼。 – ojblass 2015-06-02 19:49:25