当我单击该框时,我需要更改分数,但只更改我单击的框,但现在它会更改循环中所有框的分数。我有group_id,单击了哪个框,但是,如何将这个group_id加入到text()函数中,或者有什么解决方案呢?
https://jsfiddle.net/9zx38y9g/2/
<div data-group="1" class="score">
<!-- PHP loop -->
<i data-nr="1" class="list"></i>
<i data-nr="2" class="list"></i>
<i data-nr="3" class="list"></i>
<span class="list-score">25</span>
</div>
<div data-group="2" class="score">
<!-- PHP loop -->
<i data-nr="1" class="list"></i>
<i data-nr="2" class="list"></i>
<i data-nr="3" class="list"></i>
<span class="list-score">18</span>
</div>
$('.list').click(function() {
var group_id = $(this).closest('.score').data('group');
$('.list-score').text(250);
});
最佳答案
您可以在父元素上下文中使用find()
元素。
$('.list').click(function() {
var score = $(this).closest('.score');
score.find('.list-score').text(250);
//var group_id = score.data('group');
//.siblings() method can also be used
$(this).siblings('.list-score').text(250);
});
Fiddle
关于javascript - 将data-id附加到文本功能,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/37614418/