我做错了什么?
此链接没有关联的ID或类,因此我必须查找URL。
这是我的代码,但链接没有更新..我知道我很接近!
$(document).ready(function(){
if (document.location.href.indexOf('/MyWebsite/Example.aspx') > 0)
{
$('a[href*="/HelloWorld/default.aspx"]').append("href",$("?template=PW"))
}
});
答案 0 :(得分:4)
$(document).ready(function(){
if (document.location.href.indexOf('/MyWebsite/Example.aspx') > 0)
{
var $el = $('a[href*="/HelloWorld/default.aspx"]');
$el.attr("href", $el.attr("href")+ "?template=PW");
}
});
答案 1 :(得分:3)
使用$ .attr()编辑属性。
$。append()用于在元素中插入html子节点。
$(document).ready(function(){
if (document.location.href.indexOf('/MyWebsite/Example.aspx') > 0)
{
var href = '/HelloWorld/default.aspx';
$('a[href*="' + href + '"]').attr("href", href + "?template=PW")
}
});
答案 2 :(得分:1)
替换
$('a[href*="/HelloWorld/default.aspx"]').append("href",$("?template=PW"))
使用
$.each(
$('a[href*="/HelloWorld/default.aspx"]'),
function(index, value) {
$(value).attr('href', $(value).attr('href') + '?template=PW');
}
);
这将帮助您入门,但您还应检查以确保匹配的网址中已存在查询字符串参数。
$()。append()不会改变href属性的值,它用于在每个匹配元素的末尾插入内容。 jQuery documentation包含如何使用$()。append()。
的示例答案 3 :(得分:1)
您考虑过使用PURL吗?通过PURL,我能够做到这一点:
var url = "http://localhost/some/url?item1=one&item2=two";
if ($.url(url).attr('query')) {
url = url + '&newItem=new';
}
else {
url = url + '?newItem=new';
}
答案 4 :(得分:1)
这肯定会解决你的问题,就像它一样。
<script type="text/javascript">
var querystring = 'MyString'; // Replace this
$('a').each(function(){
var href = $(this).attr('href');
href += (href.match(/\?/) ? '&' : '?') + querystring;
$(this).attr('href', href);
});
</script>