我正在尝试创建一个进度条,所以我使用APC apache扩展来实现:http://pastebin.com/TBui6ckT
我使用:header("Percent:".$percent);
在您调用网站时将百分比作为标题。所以我回到索引页面一个用过的ajax来调用那个进度页面并检查我所做的名为“Percent”的标题,并将主页面上的内容更改为该数字。下面是脚本:http://pastebin.com/NkQv2Uq0 var test;只是暂时的,我会把它改为:
if(xmlhttp.getResponseHeader("Percent")<=100) ...
我认为这是标题只是返回“Header:'%'%”作为一个字符串...但我不确定。我也知道这是一个事实,它是标题,因为如果我输入:document.getElementById('progress_number').innerHTML=xmlhttp.getAllResponseHeaders();
它返回包括百分比在内的每个标题。但奇怪的是它没有更新它的自我。你会认为它会循环:setTimeout(onSubmit(upload_id), 999);
但它没有。
感谢您的帮助。
答案 0 :(得分:2)
在你的第二个pastebin中你有一个错误
if(test=1)
应该是
if(test==1)
你遇到的第二个错误是你的setTimeout错误
setTimeout(onSubmit(upload_id), 999);
应该是
setTimeout(function(){ onSubmit(upload_id); }, 999);
第三
if(xmlhttp.getResponseHeader("Percent")<=100)
getResponseHeader
返回一个字符串,以便您将字符串与数字进行比较。您需要使用parseInt()
if( parseInt( xmlhttp.getResponseHeader("Percent"), 10) <= 100 )