Jquery在不同情况下在url的末尾添加一个String

时间:2012-04-30 14:45:04

标签: jquery string url

我需要在当前网址的末尾添加字符串$order=ASC$order=DES C.

我的问题是我得到了这个:

www.url.com/?order=ASC

我需要这个

www.url.com/search.php?order=ASC

但是(使用相同的search.php脚本)我需要像这样使用url

www.url.com/search.php?status=active&name=bill&order=ASC

这意味着,我有www.url.com/search.php?status=active&name=bill的链接,我需要在最后添加订单字符串。

我在这里看了一下stackoverflow,但第一个例子没有任何作用:

www.url.com/search.php?order=ASC

2 个答案:

答案 0 :(得分:0)

使用myURL Plugin for jQuery,您可以使用以下方法轻松完成此操作:

var url = $.myURL("search.php", { order: 'ASC' });

有更多数据:

var url = $.myURL("search.php", { status: 'active', name: 'bill', order: 'ASC' });
// will render
// http://www.yoursite.com/search.php?status=active&name=bill&order=ASC

答案 1 :(得分:0)

我不确定是否会得到这个,但要获得JS中的查询字符串,您所需要做的就是:

var qs = window.location.search;

要设置新的查询字符串,请执行以下操作:

window.location.search = 'order=ASC';

请注意不要创建无限重定向循环。

  

这意味着,我有一个链接   www.url.com/search.php?status=active&name=bill和我需要添加   最后订购字符串。

如果此链接类似于:

<a href="www.url.com/search.php?status=active&name=bill"></a>

做的:

var oldURL = $('a').attr('href');
var newURL = oldURL+'&order=ASC';

$('a').attr('href', newURL);

如果由于某种原因需要添加到当前网址:

var URL = window.location:
window.location = URL+'search.php?status=active&name=bill&order=ASC

要在添加新查询字符串之前删除旧的查询字符串,请执行以下操作:

var URL = window.location.replace(window.location.search, '');

如果你确定有一个查询字符串,你也可以这样做:

var URL = window.location.split('?')[0];

要检查URL中的最后一个字符是斜杠,请将其删除,执行:

var url = window.location;
var lastChar = url[url.length-1];

if (lastChar == '/') {
    url = url.substring(0, url.length-1);
}

到目前为止,你肯定能明白这一点,你几乎可以获得并设置任何URL和查询字符串。