JQuery заменить запрос - PullRequest
       4

JQuery заменить запрос

0 голосов
/ 18 февраля 2011

Я хотел бы изменить атрибут 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 ]

1 голос
/ 18 февраля 2011
$('#xyx ul li a').attr('href',function(i,href){ 
    return href.replace('-1','-2'); 
});
  • $('#xyx ul li a') нацелены на соответствующие <a> элементы.

  • Позвоните на attr() (документы) метод для ссылки на атрибут href.

  • Передайте функцию, которая будет вызываться один раз для каждого элемента <a>.

  • Пусть эта функция выполнит .replace() (документы) на href и вернет результат в .attr().

0 голосов
/ 18 февраля 2011

Используйте метод attr и передайте ему функцию . Это выполняет функцию для каждого элемента в наборе jQuery, заменяя предоставленный атрибут на значение, возвращаемое функцией.

jQuery передает текущее значение атрибута в качестве второго параметра функции (в данном случае это будет текущее значение «href»), поэтому мы просто заменяем вхождения -1 на -2.

$('#xyx a').attr('href', function(i, href) { 
    return href.replace('-1','-2'); 
});
0 голосов
/ 18 февраля 2011

Попробуйте это

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

Вы можете изменить число «1» на любое число, которое вам нужно.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...