天天看點

小技巧:onchange事件+iframe 模拟異步檔案上傳

版權聲明:本文為部落客原創文章,未經部落客允許不得轉載。 https://blog.csdn.net/chengyi_L/article/details/51271918

1.上傳檔案一般通過<input type="file">這樣來實作,但是file的按鈕不是很美觀。在日常應用中可以通過用一個a标簽或者button觸發file的click事件來彈出檔案視窗。還能通過onchange事件與iframe結合來控制異步。

例:

html代碼

<pre name="code" class="html">           
<a href="javascript:void(0)" onclick="javascript:upImage()" >選擇圖檔</a>
<form id="imgUpload" name="imgUpload" action="/site" method="post" enctype="multipart/form-data" target="frameFile">
	<input id="filedata" contenteditable="false" type="file" style="display:none;" 
	onChange="document.getElementById('imgUpload').setAttribute('action','/site?' + new Date().getTime() );           
<span style="white-space:pre">	</span>document.imgUpload.submit();" name="imgFile">
</form>
<iframe id="frameFile" name="frameFile" style="display: none;"></iframe>           

綁定a标簽與file的click事件

function upImage(){
	var isIE=document.all && window.external;
	if(!isIE){
		document.getElementById('filedata').click();
	}
}           

未完待續。

繼續閱讀