![](/img/trans.png)
[英]Converting Javascript to PHP Echoes to Insert PHP Conditional Statements
[英]using javascript to show messages that php echoes
我正在使用以下函數在我的HTML頁面上顯示消息,即文件已成功上傳。 問題是,當我上傳多個文件時,它只顯示已上傳的最后一個文件的消息,而不是我要顯示已上傳的所有文件的消息。 我試過這樣的東西,但沒有工作。
function completeHandler(event){
var prevstatus = "";
$id("status").innerHTML = event.target.responseText + prevstatus;
prevstatus = $id("status").innerHTML;
$id("progressBar").value = 0;
$id("progressBar").style.visibility = 'hidden';
}
似乎無法使用
$id("status").innerHTML += event.target.responseText;
調用completeHandler()的函數是:
function UploadFile(file){
$id("progressBar").style.visibility = 'visible';
var xhr = new XMLHttpRequest();
xhr.upload.addEventListener("progress", progressHandler, false);
xhr.addEventListener("load", completeHandler, false);
xhr.addEventListener("error", errorHandler, false);
xhr.addEventListener("abort", abortHandler, false);
//start upload
xhr.open("POST", $id("upload").action, true);
xhr.setRequestHeader("X_FILENAME" , file.name);
xhr.send(file);
}
此功能也使用div狀態字段
function progressHandler(event){
var percent = (event.loaded / event.total) * 100;
$id("progressBar").value = Math.round(percent);
$id("status").innerHTML = Math.round(percent)+"% uploaded... please wait";
}
我不認為prevstatus
正在做任何事情。 並附加到innerHTML
使用+=
like:
嘗試
function completeHandler(event){
$id("status").innerHTML += event.target.responseText;
$id("progressBar").value = 0;
$id("progressBar").style.visibility = 'hidden';
}
每次使用空字符串調用函數時,都在初始化var prevstatus
。
嘗試用這個替換innerHTML調用以附加新消息:
$id("status").innerHTML += event.target.responseText;
或者要添加新消息,您可以使用以下行:
$id("status").innerHTML = event.target.responseText + $id("status").innerHTML;
好的,我用它修好了
var prevstatus = "";
作為全局變量和功能
function completeHandler(event){
$id("status").innerHTML = event.target.responseText + prevstatus;
prevstatus = $id("status").innerHTML;
$id("progressBar").value = 0;
$id("progressBar").style.visibility = 'hidden';
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.