具有以下代码:
<script type="text/javascript">
var chargeup = 0;
var flag1 = "no";
var stored = <?php print $x_row['watts']; ?>; // Gets wstored (previous value) from DB.
var charge = <?php print $charge; ?> + stored;
window.onload = function chargeT1() {
timer = setInterval(function chargeT2 () {
charge = charge+<?php print $n_gr; ?>; // $n_gr = 1;
if (flag1 !="no"){
charge = chargeup;
}
document.getElementById('charge').innerHTML = charge;
flag1 = "no";
}, 1000);
}
</script>
我们得到一个“计时器”,它每秒增加 +1,因为 $n_gr = 1。
我想要实现的目标: 我想返回一个“flag1='yes';” 以及来自回调函数的新“chargeup”值,该值会将变量“charge”更改为“chargeup”并继续每秒添加 +1。
例如:在“t”时刻charge的值为“100”,在“t+1”为101,在“t+2”为102,......一个事件触发回调函数并返回“chargeup = 10” " 和 "flag1=yes" 所以 "charge" 变为 10 并从 10 开始每秒增加 +1:t+3 是 11,t+4 是 12...
我不知道我做错了什么,但是当回调函数返回时,例如,10 我得到的费用是 10,然后是 101,1011,10111...
这是我的回调函数:
function useHttpResponse (){
if (http.readyState == 4) {
if (http.status == 200) {
var timeWatts = http.responseXML.getElementsByTagName("upwatts")[0];
chargeup = timeWatts.childNodes[0].nodeValue; //example: returns a value of 10
flag1 = "yes";
} else {
document.getElementById('showbuy').innerHTML='<img src="anim.gif">';
}
}
}
我真的被困住了。任何想法或建议都将受到欢迎。提前感谢您的宝贵时间。