jQuery: динамический URL

0

У меня есть ряд URL-адресов, и мне интересно, есть ли способ динамически изменить последнюю цифру.

    <div class="m_item">
        <a class="thumbnail_link" href="http://paraboladesignstudio.ipage.com/yahaira/fashion/fashion-slideshow/?thumb=0">
            <img src="<?php echo $image['sizes']['thumbnail'];?>" title="<?php echo $image['title'];?>" alt="<?php echo $image['alt']; ?>"> 
        </a>
    </div>  

Вышеприведенный код выводит определенное количество ".m_item" с теми же "a href" s.

Это мой код jQuery:

var i=0;
i++;

$(".thumbnail_link").each(function() {
    this.href = this.href.replace("0", i);
});

Он изменил все URL-адреса на "..../? Thumb = 1"

Как я могу увеличить цифру? Я пробовал. Детей без везения.

Спасибо.

  • 0
    По крайней мере, попробуйте: $(".thumbnail_link").each(function(i) { this.href = this.href.replace("0", i); }); и удалите свою декларацию i
  • 2
    бить тебя на 3 секунды
Теги:

3 ответа

3
Лучший ответ

Избавьтесь от я и просто используйте индекс каждого() https://api.jquery.com/each/

$(".thumbnail_link").each(function(index) {
    this.href = this.href.replace("0", index);
});

Или вы можете сделать это, если в URL-адресе есть другие 0

$(".thumbnail_link").each(function(index) {
    this.href = this.href.replace("thumb=0", "thumb=" + index);
});
  • 0
    что произошло, когда в строке URL есть другие "0" s?
  • 0
    Судя по тому, как ОП спросил, кажется, что есть только один 0, но вы всегда можете заменить весь большой палец = 0
Показать ещё 7 комментариев
2

Он делает это, потому что i только когда-либо увеличивал один раз. Он начинается как ноль, затем вы ударяете его до 1 с помощью i++, а затем вы никогда не меняете его снова. Попробуй это:

$(".thumbnail_link").each(function(i) {
    this.href = "http://paraboladesignstudio.ipage.com/yahaira/fashion/fashion-slideshow/?thumb=" + i;
});
1

или если вы хотите обновить последний номер, используйте это

$(".thumbnail_link").each(function(index) {
    this.href = this.href.replace(/([\d]+)$/g, index);
});

Ещё вопросы

Сообщество Overcoder
Наверх
Меню