Javascript 如何使用参数检索整个URL?
我需要用参数作为字符串检索整个URL。例如,我需要检索以下URL:Javascript 如何使用参数检索整个URL?,javascript,Javascript,我需要用参数作为字符串检索整个URL。例如,我需要检索以下URL: http://www.keytometals.com/page.aspx?ID=CheckArticle&site=kts&LN=EN&NM=349 http://www.keytometals.com/page.aspx?ID=CheckArticle 我尝试使用: document.location.href, document.URL, window.location.href 但它只检索UR
http://www.keytometals.com/page.aspx?ID=CheckArticle&site=kts&LN=EN&NM=349
http://www.keytometals.com/page.aspx?ID=CheckArticle
我尝试使用:
document.location.href,
document.URL,
window.location.href
但它只检索URL的一部分:
http://www.keytometals.com/page.aspx
如何获取包含当前URL及其参数的字符串
一个更新:我使用了
window.content.document.location.href
我有以下网址:
http://www.keytometals.com/page.aspx?ID=CheckArticle&site=kts&LN=EN&NM=349
http://www.keytometals.com/page.aspx?ID=CheckArticle
不幸的是,它仍然是URL的一部分。有人能帮我把整个URL变成一个字符串吗
谢谢 您只需要简单的
文档。位置
——这将包括所有内容。您需要编写自己的代码,以便在第一时间拆分它?只获取查询字符串,然后在每个&处将其拆分为名称/值对
编辑:
实际上,您也可以使用location.search
。以下是我为此编写的一个片段:
function loadQueryString(){
var parameters = {};
var searchString = location.search.substr(1);
var pairs = searchString.split("&");
var parts;
for(i = 0; i < pairs.length; i++){
parts = pairs[i].split("=");
var name = parts[0];
var data = decodeURI(parts[1]);
parameters[name] = data;
}
return parameters;
}
params = loadQueryString();
函数loadQueryString(){
var参数={};
var searchString=location.search.substr(1);
var pairs=searchString.split(&);
var部件;
对于(i=0;i
您应该对整个URL(包括查询字符串)使用window.location.href
有关更多信息和其他属性,请参阅
下面是另一篇关于如何使用的好文章
然后你就这样使用它:
// get a single key (if it exists)
var t = getQueryString('site');
console.log(t);
// get the whole thing as an object
t = getQueryString();
console.log(t);
那就
window.location
?window.location.href对我有效。不幸的是,无论是window.location还是window.location.href都对我无效。我在中尝试了在线Javascript编辑器,编写document.write(window.location.href),但结果是:您正在internet explorer中尝试吗?为什么使用eval()
?括号符号是你的朋友:)@alex:你为什么不自己修呢?:)嗯,我想当我最初写它的时候,我还没有完全理解数组和对象在JS中本质上是相同的这一事实。所以,是的,括号很好用。@Crozin:我不知道我是否应该在答案中修改别人的代码请告诉我如何将这个params变量写成字符串好吗?我尝试了document.write(params.toString),但它不起作用。您能告诉我如何将此对象作为字符串检索吗?当我尝试使用document.write(t)进行写入时,它只写入“object object”…您不能将对象写入字符串,但可以将对象的属性写入字符串。使用上面的第二个示例(将整个内容作为对象),如果您想编写文档的site
键,那么它将是document.write(t.site)
。不幸的是,它不起作用。例如,当我尝试在中使用document.write(window.location.href)检索URL时,我只得到了。我使用的是Mozilla Firefox 4。