2017-04-17 103 views
1

我想在點擊鏈接時使用加載圖標更改圖標。 這發生在php/html代碼中的foreach循環中。jQuery適用於php循環中的第一個元素

jQuery工作正常,但只在第一個結果。在其他結果中,它不起作用。

HTML:

<p id= "like"> 
    <a href="..Link" id="like" class="external"><i class="icon-thumbs-up"></i></a> 
</p> 

的jQuery:

$("#like").click(function() { 
    $("#like").toggle('1000'); 
    $("i", this).toggleClass("icon-loading3"); 
       }); 

所有我想要做的就是更改類的圖標,豎起大拇指圖標loading3 和移除鏈接!

感謝您的幫助;)

+1

而不是'id'使用'class' –

+0

使用class而不是id,而不是簡單的點擊使用$(document).on(「click」,「selector」,function(){})我的回答 –

回答

0

這應該很好地工作:

$(".external").click(function(){ 
    $(this).find("i").addClass("icon-loading3").removeClass('icon-thumbs-up'); 
    $(this).parent().html($(this).html()); 
}) 
+0

所有的答案都很棒,但你的作品對我來說是最好的! –

0

看在HTML ids and classes,重命名ID = 「喜歡」 類= 「一樣,主要 」 或者熟悉的東西。

行爲是正確的,因爲DOM只存儲具有給定ID的第一個值。

0

的變化ID類像下面

HTML:

<p class= "like"> 
    <a href="..Link" class="like" class="external"><i class="icon-thumbs-up"></i></a> 
</p> 

的jQuery:

$(".like").click(function() { 
    $(".like").toggle('1000'); 
    $("i", this).toggleClass("icon-loading3"); 
       }); 
0

,如果你正在使用它然後使用class不是id。在一個頁面上,每個元素應該有唯一的ID。

所以請去做喜歡:

<p class="like"> 
    <a href="..Link" class="anchor_like" class="external"><i class="icon-thumbs-up"></i></a> 
</p> 

$(document).on('click','.like',function() { 
    $(this).toggle('1000'); 
    $(this).find('i').toggleClass("icon-loading3"); 
}); 
0

你的答案全部是驚人的。 diavolic的答案對我來說效果最好! ;)

相關問題