2013-04-03 27 views
0

上传进度股利增加

function uploadToServer(){ 
fileField = document.getElementById("uploadedFile"); 
var fileToUpload = fileField.files[0]; 
var xhr = new XMLHttpRequest(); 
var uploadStatus = xhr.upload; 
uploadStatus.addEventListener("progress", function (ev) { 
     if (ev.lengthComputable) { 
      $("#uploadPercentage").html((ev.loaded/ev.total) * 100 + "%"); 
     } 
    }, false); 

uploadStatus.addEventListener("error", function (ev) {$("#error").html(ev)}, false); 
uploadStatus.addEventListener("load", function (ev) {$("#error").html("sorry!")}, false); 

xhr.open(
     "POST", 
     "serverUpload.php", 
     true 
     ); 
    xhr.setRequestHeader("Cache-Control", "no-cache"); 
    xhr.setRequestHeader("Content-Type", "multipart/form-data"); 
    xhr.setRequestHeader("X-File-Name", fileToUpload.fileName); 
    xhr.setRequestHeader("X-File-Size", fileToUpload.fileSize); 
    xhr.setRequestHeader("X-File-Type", fileToUpload.type); 
    //xhr.setRequestHeader("Content-Type", "application/octet-stream"); 
    xhr.send(fileToUpload); 

}

$(函数(){

$("#uploadButton").click(uploadToServer); 

});

`

<form action="" name="uploadForm" method="post" enctype="multipart/form-data"> 

。在这个代码是工作的罚款。但我需要增加div大小。但是这个只显示百分比。我必须改变才能获得第一个。

回答

0

波纹管是使用HTML5

<progress id="progressBar" value="0" max="100" style="width:300px;"></progress> 
<span id="status"></span> 
<h1 id="finalMessage"></h1> 
<script type="text/javascript" language="javascript"> 
function progressBarSim(al) { 
    var bar = document.getElementById('progressBar'); 
    var status = document.getElementById('status'); 
    status.innerHTML = al+"%"; 
    bar.value = al; 
    al++; 
    var sim = setTimeout("progressBarSim("+al+")",300); 
    if(al == 100){ 
    status.innerHTML = "100%"; 
    bar.value = 100; 
    clearTimeout(sim); 
    var finalMessage = document.getElementById('finalMessage'); 
    finalMessage.innerHTML = "Process is complete"; 
} 
    } 
    var amountLoaded = 0; 
    progressBarSim(amountLoaded); 
</script> 

它可以帮助你,解决你的编码这个代码简单进度代码。

+0

谢谢杰伊。但我对jquery很陌生,所以无法修正第一个问题。我做到了,但并不顺利。 –

+0

我给你的代码,它的工作正常。只需复制整个代码并将其粘贴到带有.html扩展名的新文件中并运行即可。它会给你的结果。后来你把这个脚本部分放在你的代码中。并在html身体部分放置进度元素。 – Jaydipsinh

+0

好的,谢谢你..我会试试.. –