jquery替换查询

时间:2011-02-18 15:55:57

标签: jquery jquery-selectors

我想更改特定href中所有锚标记的div属性。

<div id="xyx">
    <ul> 
        <li><a href="xyz/-1"/></li>
        <li><a href="abc/-1"/></li>
        <li><a href="cab/-1"/></li>
    </ul>
</div>

我想将其替换为:

<div id="xyx">
    <ul> 
        <li><a href="xyz/-2"/></li>
        <li><a href="abc/-2"/></li>
        <li><a href="cab/-2"/></li>
    </ul>
</div>

即。我想将-1替换为-2

如何在jQuery中完成?

3 个答案:

答案 0 :(得分:1)

$('#xyx ul li a').attr('href',function(i,href){ 
    return href.replace('-1','-2'); 
});
  • $('#xyx ul li a')定位正确的<a>元素。

  • 调用attr()(docs)方法以引用href属性。

  • 传递一个将为每个<a>元素调用一次的函数。

  • 让该功能在href上执行.replace()(docs)并将结果返回到.attr()

答案 1 :(得分:0)

试试这个

$("#xyx ul").find("li:nth-child(1) a").attr("href", "url");

您可以将数字“1”更改为您需要的任何数字链接。

答案 2 :(得分:0)

使用attr方法,并向其传递function。这将对jQuery集中的每个元素执行函数,将提供的属性更改为函数返回的值。

jQuery将属性的当前值作为函数的第二个参数传递(在这种情况下将是当前的“href”值),因此我们replace -1只发生-2 1}}。

$('#xyx a').attr('href', function(i, href) { 
    return href.replace('-1','-2'); 
});