我已经为此苦苦挣扎了两天,显然是因为我对 jQuery / Javascript 知之甚少,而且我想我已经彻底搜索了很多次,但没有得到我需要的答案。
我正在使用 Wordpress 循环,每个循环项都有:一个带类的跨度,以及一个通过 jQuery 触发更新到该跨度值/内容的链接。
到目前为止,我所拥有的是:当我单击触发链接时-假设在第一个循环项目上,所有项目循环上的所有跨度值/内容都会更新。我要实现的目标很简单:当我单击第一个循环项上的触发链接时,它仅更新该循环项上的跨度值/内容。
这是HTML:
<div class="loop-item>
<span class="count">123</span>
<span><a class="update"></a></span>
<p>some text</p>
</div>
<div class="loop-item>
<span class="count">123</span>
<span><a class="update"></a></span>
<p>some text</p>
</div>
<div class="loop-item>
<span class="count">123</span>
<span><a class="update"></a></span>
<p>some text</p>
</div>
<div class="loop-item>
<span class="count">123</span>
<span><a class="update"></a></span>
<p>some text</p>
</div>
这是jQuery:
$(document).ready(function(){
$(".update").click(function(){
var countVal = $(".count").text();
var nuVal = countVal + 1;
$(".count").text(nuVal);
});
});
我知道这是一个完全错误的 jQuery 代码。我愿意学习,希望这里有人愿意帮助把它做好。
谢谢。
更新:
工作的 jQuery 代码如下(修改了 nuVal 变量):
$(document).ready(function(){
$(".update").click(function(){
var countSpan = $(this).closest(".loop-item").find(".count");
var countVal = countSpan.text();
var nuVal = parseInt(countVal) + 1;
countSpan.text(nuVal);
});
});
谢谢!