我有一个jquery应用程序,它由一个表组成。该表有一个时间字段和一些数字字段。我想基本上每3秒增加一次值。所以我想要创建一个函数来增加数字值,然后通过每3秒自动刷新一次的刷新函数调用它。
因此,基本上,最初的信息如下
科比10:00 30 4 2 3秒后应该是 科比10:03 31 5 4
这是我做的小提琴。
我不能这么做。我试图创建一个函数,其中我增加了表值,并按如下方式调用了该函数
setInterval(updateFunction,3000);
但没有运气。这就是我想要创建一个函数的方式。
var cell = $("#example");
var currentVal = parseInt(cell.text(), 10);
cell.text( currentVal + 1 );有谁能给我一些建议吗。我对js和jquery并不熟悉,如果我很难理解我的意思的话,我也为糟糕的英语感到遗憾。
发布于 2014-03-19 15:42:54
这里有个办法。向需要更新的单元格中添加类:
<td>Lebron James</td>
<td class="updateMeTime">08:00</td>
<td class="updateMeInt">27</td>
<td class="updateMeInt">11</td>
<td class="updateMeInt">10</td>在本例中,类updateMeInt表示它是一个简单整数,而updateMeTime表示它是一个时间值。
然后,update函数将使用以下类和增量遍历每个单元:
function UpdateFunction(){
$(".updateMeInt").each(function(index){
var cur = parseInt($(this).text(), 10);
$(this).text(cur + 1);
});
$(".updateMeTime").each(function(index){
var cur = $(this).text().split(":");
var sec = parseInt(cur[1], 10);
var min = parseInt(cur[0], 10);
sec = sec + 3;
if (sec >= 60){
sec = 0
min = min + 1;
}
$(this).text(pad(min) + ":" + pad(sec));
});
} 更新的小提琴
发布于 2014-03-19 15:41:10
在interval函数上尝试以下代码:
$("#example > tbody tr").each(function(){
var s = 0; //--- var for not increase 1st td ---
$("td",this).each(function(){
var data = $(this).html();
if(/^[0-9]+\.?[0-9]*$/.test(data)){
$(this).html(++data);
} else {
if(s == 1) {
date = new Date();
var h = date.getHours();
var m = date.getMinutes();
if(m < 10) {m = '0'+m;}
$(this).html(h+':'+m);
};
s = 1; //--- after 1st td increase ---
}
});
});JSFiddle
https://stackoverflow.com/questions/22508441
复制相似问题