Jquery:将querystring附加到所有链接
我想在页面中的所有动态链接上附加一个查询字符串,以修复旧版本中的错误,这可能吗 有什么想法吗?像这样的吗Jquery:将querystring附加到所有链接,jquery,jquery-mobile,Jquery,Jquery Mobile,我想在页面中的所有动态链接上附加一个查询字符串,以修复旧版本中的错误,这可能吗 有什么想法吗?像这样的吗 var querystring = 'myquerystringtoadd'; $('a').each(function() { var href = $(this).attr('href'); if (href) { href += (href.match(/\?/) ? '&' : '?') + querystring; $(t
var querystring = 'myquerystringtoadd';
$('a').each(function() {
var href = $(this).attr('href');
if (href) {
href += (href.match(/\?/) ? '&' : '?') + querystring;
$(this).attr('href', href);
}
});
使用本机javascript的此解决方案:
var querystring = 'yourQueryStringHere=;-)';
document.addEventListener('click', function (e) {
var x = e.originalTarget;
if (x.nodeName === 'A') {
var href = x.getAttribute('href');
if(href) {
href += (/\?/.test(href) ? '&' : '?') + querystring;
x.setAttribute('href', href);
}
}
}, false);
比@woz-answer更好,因为检查现有的querystring,或者附加&或者以?@jaygooby作为前缀。对还应该对url锚(“#”)进行额外检查。@flem-1:这不起作用。我想应该是
href.match(/\?/)
@dalbaeb Nice spot。未转义?
。我已经更正了帖子并添加了一把小提琴。谢谢如果您现在满意,请删除否决票:)我遇到的唯一问题是a
标记没有href属性,所以我只是在混合中添加了If(href){href+=…
,以防止它在这样的链接上断开。