Javascript 从PHP/SQL获取信息的计时
只是想让你知道我还不是新手 我有以下javascript代码:Javascript 从PHP/SQL获取信息的计时,javascript,php,mysql,ajax,Javascript,Php,Mysql,Ajax,只是想让你知道我还不是新手 我有以下javascript代码: window.onload = function() { renderTime(); getsec(myHandler); countdown('countdown'); ... } function myHandler(resultado) { seconds = resultado; } function reqListener () { console.log(this.resp
window.onload = function() {
renderTime();
getsec(myHandler);
countdown('countdown');
...
}
function myHandler(resultado) {
seconds = resultado;
}
function reqListener () {
console.log(this.responseText);
}
function getsec(callback) {
var indice = 1;
var oReq = new XMLHttpRequest();
oReq.onload = function() {
var variarr = JSON.parse(this.responseText);
callback(variarr[0]);
};
oReq.open("GET", "getsec.php?lei="+indice, true);
oReq.send();
}
这对我来说非常合适。目的是每秒通过getsec.php从MySQL表中获取数据。正如你所看到的,我有一个倒计时(“倒计时”)函数,看起来像这样:
function countdown(element) {
...
interval = setInterval(function() {
...
if( runned == false){ // This condition happens
...
} else {
...
}
}, 1000);
}
我试图将函数getsec(myHandler)放入函数countdown('countdown')中
我不再得到我想要的信息。
有人能解释一下原因吗?为什么您希望回调是一个变量,而不是一直让它成为
myHandler
?为什么myHandler
实际上不处理数据呢?请耐心等待我@developerwjk,我正试图通过一步一步地应用我所学到的知识来理解“这些东西”是如何工作的。我想每秒钟获取一次MySQL数据,在多次失败后,我从stackoverflow获取了这段代码,并对其进行了更改,最终使其正常工作。我在这里用了一个变量-秒作为例子,但还有更多。我在代码中进一步使用这些变量(我把…)。希望我能理解你的意思。“runned”是在任何地方设置的,还是在其他地方使用的?由于函数getsec(myHandler)和countdown(“countdown”)在window.onload(每秒)上运行,为什么getsec(myHandler)在countdown(“countdown”)内部调用时停止工作?@Blah Argh runned是在条件下设置的,我测试它,结果为false。代码的其余部分(…)工作正常,只有getsec(myHandler)停止工作。
if( runned == false){ // This condition happens
getsec(myHandler);