使用jquery使用文本更改锚点的href链接

时间:2013-01-02 15:32:03

标签: jquery

如果我有:

<a href="#">Title </a> 
<a href="#">Title2 </a> 

我希望在第一个锚点上href为Title,在第二个锚点上为Title2

我已尝试使用attr("href" function() { return this.text; });

2 个答案:

答案 0 :(得分:3)

几乎就在那里:

$('a').attr("href", function() { return $(this).text(); });

Demonstration

答案 1 :(得分:1)

更改会是这样的:

$('a').each(function(i,e){
  this.href = '#' + $(this).text(); // using # because i assume named anchor?
});

那会改变:

<a href="#">Title</a>        -> <a href="#Title">Title1</a>
<a href="#">Title2</a>       -> <a href="#Title2">Title2</a>
  • 抓住所有锚点($('a')
  • 遍历每一个(.each()
  • 使用锚文本(this.href = $(this).text()
  • 分配新值

如果您不想要指向锚点/ id元素的链接,也可以从上面删除'#' +部分,但是锚点显示文本提供的任何内容都可能不是将成为有效的URL)