例如,想要将yahoo.com中的所有href值修改为google.com
我试过了:
$("[href='http://yahoo.com']").val('http://google.com');
它不起作用,这样做的正确方法是什么?
感谢。
答案 0 :(得分:4)
如果您希望用“google.com”替换任何href
的“yahoo.com”部分:
$("[href*='yahoo.com']").attr("href", function(i,v){
return v.replace("yahoo.com", "google.com");
});
这可以通过在href
属性中的任何位置循环显示“yahoo.com”的所有元素,并使用“google.com”替换该字符串。
<a href="http://yahoo.com">Yahoo</a>
<a href="http://www.yahoo.com">www.yahoo.com</a>
<a href="http://yahoo.com?foo">Yahoo?</a>
变为
<a href="http://google.com">Yahoo</a>
<a href="http://www.google.com">www.yahoo.com</a>
<a href="http://google.com?foo">Yahoo?</a>
答案 1 :(得分:2)
您正尝试在没有的元素上设置value属性。相反,您要设置href attribute,如下所示:
$("[href='http://yahoo.com']").attr("href","http://google.com");
答案 2 :(得分:2)
另一个选项,例如工作演示:http://jsfiddle.net/CFpeU/(http://jsfiddle.net/CFpeU/show)或 http://jsfiddle.net/CFpeU/2/(http ://jsfiddle.net/CFpeU/2/show/)
道具API:http://api.jquery.com/prop/
代码:
$(".foo").prop("href","http://www.google.com");
或强>
$("[href='www.yahoo.com']").prop("href","http://google.com");
答案 3 :(得分:1)
要更改包含yahoo.com的所有 href
值,您可以:
$("a[href*='yahoo.com']").prop("href", "http://www.google.com");
这适用于:
工作Fiddle Example以更好地说明解决方案!
答案 4 :(得分:0)
有多种方法可以尝试
$("a[href='http://www.google.com/']").attr('href', 'http://www.live.com/')