用javascript获取文件输入?

我在HTML中有这一行:

 

用户选择要上传的文件后,按下提交按钮,我试图从上面的文件输入标签中获取他们选择的文件。 如何使用javascript获取文件,以便稍后通过AJAX发送以避免页面重新加载?

如果没有iframe hacks,那么在HTML5 File API问世之前,这是不可能的。 使用HTML5 File API,您可以这样做

 $(".input-file").change(function() { var file = this.files[0]; var reader = new FileReader(); reader.onload = function() { alert(reader.result); }; reader.readAsText(file); }); 

请注意,这仅适用于支持HTML5文件API的浏览器,例如Chrome。

您可以使用许多上传插件,例如http://blueimp.github.com/jQuery-File-Upload/

您可以导航到源代码并查看它是如何完成的。

  $('#myFile').bind('change', function() { alert(this.files[0].size); });