使用jQuery $.post提交<input type="file" />。

3
我有一个包含文件上传 <input id="file" type="file"/> 标签的 <div/> 标签。我想使用 $.ajax()$.post()input 标签的内容发布到一个 php 页面,但是如何获取类型为 "file"input 标签的内容?这样我就可以使用 jQuery ajax 函数提交它了。
注意:我的代码还没有 <form/> 标签。我不确定上传文件是否必须要使用它。此外,我看到一些使用 <iframe> 的解决方法,我想知道是否还有其他方法可以实现。
我不想使用任何插件来完成这个任务。

这可以通过使用<iframe> / java applet / flash来完成。 - Teneff
2个回答

2

字节流无法成为异步请求的一部分。

换句话说,您不能使用AJAX方法发送数据。


是的。我回答了这个问题,因为他在考虑使用jQuery $.ajax或任何其他使用AJAX的方法。 - Matías Fidemraizer
@MatíasFidemraizer:这不是真的。您可以使用“drop”事件侦听器(例如在div上)捕获数据,使用event.dataTransfer.files,然后使用var fd = new FormData(); fd.append("fileToUpload", fileList[i]);创建新的FormData,创建新的XMLHTTPRequest并发送数据:request.send(fd); - Julian F. Weinert
1
@Julian 我猜你在谈论HTML5。请随意编辑我的回答,添加这些信息,我会为你批准编辑。 - Matías Fidemraizer

1

在SO上,直接链接到外部网站并不被推荐。你应该先提供一些内容,然后再进行引用。 - Sujit Agarwal

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接