2011-11-18 17 views
0

因此,例如,我們有一個類似內容的HTML文件,以這樣的:HTML/Javascript:如何跟蹤上傳是否中止?

<body> 
    <form action="/upload" type="post" id="upload-form" enctype="multipart/form-data"> 
     <input type="file" name="file-input" /> 
    </form> 
</body> 

我想在javascript什麼

  • 當服務器遇到錯誤並中止得到通知上傳請求
  • 當用戶手動中止上傳時得到通知
  • 或任何種類的中止事件w HICH可能occure

類似:

var form = document.getElementById('upload-form'); 
form.onabort = function(error){ 
    alert(error); 
} 

是否有的JavaScript任何原生API或定製的技術呢?

回答

0

您可以在文件上傳開始前通知AJAX,然後將數字存儲在服​​務器的會話中,或者如果您確實想要數據庫中的列。

有一個inabort事件處理程序,但我的理解是它僅適用於img元素。你可以嘗試,看看它是否會爲不同的渲染引擎,但(壁虎工作:火狐,普雷斯托:歌劇,三叉戟:MSIE,WebKit的(叉):鍍鉻/ Safari瀏覽器

<form onabort="alert('the onabort event worked on this form?');"> 

有雖然一個onsubmit事件,所以你可以嘗試將它作爲START點,然後記錄用戶是否按下了退出鍵......

if (window.addEventListener) {document.addEventListener('keydown',keyPressed,false);} 
else {document.attachEvent('onkeydown',keyPressed);} 

function keyPressed(evt) 
{ 
var e = evt || event; 
var key = e.which || e.keyCode; 

switch (key) 
{ 
    // Esc 
    case 27: 
    alert('escape key pressed'); 
    break; 

    case 76://L 
    alert('L key pressed'); 
    break; 
} 
}