2014-12-25 33 views
0

好吧,我想寫代碼,如果文件大於15 mb,我的解決方案到目前爲止是這樣的,但我需要幫助。如果選擇的文件超過限制,JavaScript將阻止表單提交

onchange="if(files[0].size < 15000000){$(\'form\').submit(function() {event.preventDefault()})};" 

這是輸入類型文件屬性。我是對的,是否可以添加onsubmit ='false',也許這樣可以有人幫助我?

+0

已經回答了這裏:http://stackoverflow.com/questions/3717793/javascript-file-upload-size-validation – Saravana

+0

一個問題:'.submit()'只是增加了一個事件處理程序的元素。一旦超過限制的文件被添加,它將不會被刪除,因此即使在更改爲其他文件後,表單提交仍會被阻止。 –

回答

0

你居然沒有訪問文件系統(例如讀取和寫入本地文件),但是,由於HTML5文件API規範,有你有機會獲得一些文件屬性,文件大小是一個其中。這基於jQuery

對於HTML波紋管

<input type="file" id="myFile" /> 

嘗試以下操作:

//binds to onchange event of your input field 
$('#myFile').bind('change', function() { 

    //this.files[0].size gets the size of your file. 
    alert(this.files[0].size); 

}); 

這是一個

//gets the element by its id 
var myFile = document.getElementById('myFile'); 

//binds to onchange event of the input field 
myFile.addEventListener('change', function() { 
    //this.files[0].size gets the size of your file. 
    alert(this.files[0].size); 

}); 
0

是否使用form.submit javascipt的()來提交你的表單?你可以使用你已經使用過的同樣的檢查,但發送一個Ajax而不是請求類型爲「POST」?