在URL中检测?= randomString并使用jQuery附加到所有外部链接

时间:2012-03-16 08:04:56

标签: jquery

我正在尝试在URL中检测?= randomString(例如:?= s123ver,这是动态生成的服务器端),并将?=后的所有内容附加到页面中具有外部类的所有外部链接。

这是我必须附加字符串,我只是不确定如何绕过读取URL并将其放入_randomString变量,因为?=字符串长度可能会有所不同。

我无法访问服务器端。

var _href = $("a.external").attr("href");
var _randomString = ???
$("a.external").attr("href", _href + _randomString);

2 个答案:

答案 0 :(得分:1)

试试这个

var _randomString = window.location.href.match(/\?=(.*)$/)[1];
$('a.external').each(function() {
    $(this).attr('href', $(this).attr('href') + _randomString);
});

它会让你一直追求?=直到URL的结尾,提取它并将其附加到每个a.external

的href中

如果你需要包含?=部分(你没有这么说),试试这个

var _randomString = window.location.href.match(/\?=(.*)$/)[1];
$('a.external').each(function() {
    $(this).attr('href', $(this).attr('href') + "?=" + _randomString);
});

答案 1 :(得分:0)

您可以使用location.search返回当前网址的查询字符串。