jQuery:动态URL

时间:2014-03-19 19:06:52

标签: javascript jquery

我有很多网址,我想知道是否有办法动态更改它们的最后一位数。

    <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>  

上面的代码输出了一定数量的&#34; .m_item&#34; s和#34; a href&#34; s。

这是我的jQuery代码:

var i=0;
i++;

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

它将所有网址更改为&#34; .... /?thumb = 1&#34;

我怎样才能增加数字?我试过没有运气的孩子。

谢谢。

3 个答案:

答案 0 :(得分:3)

摆脱i,只使用each()https://api.jquery.com/each/

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

或者,如果网址中有其他0,则可以执行此操作

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

答案 1 :(得分:2)

这样做是因为i只增加一次。它从零开始,然后用i++将其提升到1,然后再也不会更改它。试试这个:

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

答案 2 :(得分:1)

或者如果您想更新最后一个号码,请使用此

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