假设我有一个PHP循环显示您可以删除的数据。我正在使用AJAX,所以当你删除一行时,它会处理一个PHP脚本,并且该行会从页面中消失。
但是,我有一些说“有5个项目”。删除项目时,我希望更改“5”。我认为最简单的方法是在Javascript中减去一个。
问题是,我真的不知道怎么做。如果有人能指出我正确的方向,那就太好了。答案 0 :(得分:19)
假设计数在id为'cnt'的范围内:
$("#cnt").text($("#cnt").text()-1)
修改强>
更安全的版本:
var cntTag = $("#cnt:first");
if (cntTag.Length == 1)
{
var cnt = parseInt(cntTag.text());
if (!isNaN(cnt))
{
cnt--;
cntTag.text(String(cnt));
}
}
答案 1 :(得分:7)
HTML:
There are <span class="numitems">5</span> items.
JS:
var span = $("span.numitems");
span.html(parseInt(span.html()) - 1);
答案 2 :(得分:3)
假设我们从三开始:
<p>There are <span id='number'>3</span> items.</p>
<ol id ='thelist'>
<li> one
<li> two
<li> three
</ol>
现在我们需要一些jQuery来处理列表中的change事件
$(function(){
$('#thelist').bind('change', function(){
$('#number').html($('#thelist li').length)
}
}
每次#thelist更改时,它都会更新#number中的长度。这种方法的一个优点是通过绑定更改事件,您不需要在计时器或类似的东西上设置setInterval。一切都做到了应有的效果。
答案 3 :(得分:1)
如果有更改,请更新完整列表。大约每5秒钟使用AJAX检查一次。
或者
There are <span id="number">5</span> items.
然后使用删除后的当前行数更改带有“数字”的span的值。当您添加新答案时,Stack Overflow会在发布新答案时使用此方法。
您可以使用
进行减法parseInt($("span").html());