0
我有這個腳本,它通過iframe上傳文件很好...即時通訊使用它在一個循環,所以這許多形式像這樣..但document.getElementById(div_id).innerHTML = "Uploading...";
只適用於第一個...任何線索如何解決這個問題?通過JavaScript在一個循環中上傳文件只顯示上傳一次
<script language="Javascript">
function fileUpload(form, action_url, div_id) {
// Create the iframe...
var iframe = document.createElement("iframe");
iframe.setAttribute("id", "upload_iframe");
iframe.setAttribute("name", "upload_iframe");
iframe.setAttribute("width", "0");
iframe.setAttribute("height", "0");
iframe.setAttribute("border", "0");
iframe.setAttribute("style", "width: 0; height: 0; border: none;");
// Add to document...
form.parentNode.appendChild(iframe);
window.frames['upload_iframe'].name = "upload_iframe";
iframeId = document.getElementById("upload_iframe");
// Add event...
var eventHandler = function() {
if (iframeId.detachEvent) iframeId.detachEvent("onload", eventHandler);
else iframeId.removeEventListener("load", eventHandler, false);
// Message from server...
if (iframeId.contentDocument) {
content = iframeId.contentDocument.body.innerHTML;
} else if (iframeId.contentWindow) {
content = iframeId.contentWindow.document.body.innerHTML;
} else if (iframeId.document) {
content = iframeId.document.body.innerHTML;
}
document.getElementById(div_id).innerHTML = content;
// Del the iframe...
setTimeout('iframeId.parentNode.removeChild(iframeId)', 250);
}
if (iframeId.addEventListener) iframeId.addEventListener("load", eventHandler, true);
if (iframeId.attachEvent) iframeId.attachEvent("onload", eventHandler);
// Set properties of form...
form.setAttribute("target", "upload_iframe");
form.setAttribute("action", action_url);
form.setAttribute("method", "post");
form.setAttribute("enctype", "multipart/form-data");
form.setAttribute("encoding", "multipart/form-data");
// Submit the form...
form.submit();
document.getElementById(div_id).innerHTML = "Uploading...";
}
</script>
<!-- index.php could be any script server-side for receive uploads. -->
<form>
<input type="file" name="myFile" /></br>
<input type="hidden" name="fid" readonly value="<?php echo $fid;?>">
<input type="hidden" name="numerolinha" readonly value="<?php echo $loader;?>">
<input type="hidden" name="contador" readonly value="<?php echo $id_postt1."linha_".$events[0]; ?>">
<input type="button" value="upload"
onClick="fileUpload(this.form,'http://www.toppromomkt.com/wp-content/themes/toppromo/wallet_upload.php','upload'); return false;" >
<div id="upload"></div>
</form></div>
你如何設置div ID?你確定他們是獨一無二的嗎? – AlexBay
我是一個改編的腳本....多數民衆贊成在一定的問題..但我無法改變該部分的腳本 –
作爲一個側面說明,你不需要使用'語言'屬性'腳本'標籤;實際上它已經[已經過時了很長時間](https://www.youtube.com/watch?feature=player_detailpage&v=Y2Y0U-2qJMs#t=827)(它在過去一段時間已經被棄用了,該視頻來自2006年!)。一個簡單的無屬性''標籤將工作得很好。所有支持'script'標籤的瀏覽器都默認爲JavaScript。 –