我们正在创建一个网页,我必须管理文件上传内容。 我正在使用iframe进行文件上传。但实际上我不知道使用它时会发生什么。在服务器端,我们使用Java。 这是我的代码:
$(document).ready(function () {
$("#formsubmit").click(function () {
var iframe = $('<iframe name="postiframe" id="postiframe"></iframe>');
$("body").append(iframe);
var form = $('#theuploadform');
form.attr("action", "http://localhost:13000/auth/login");
form.attr("method", "post");
form.attr("encoding", "multipart/form-data");
form.attr("enctype", "multipart/form-data");
form.attr("target", "postiframe");
form.attr("file", $('#userfile').val());
form.submit();
$("#postiframe").load(function () {
var iframeContents = this.contentWindow.document.body.innerHTML;
$("#textarea").html(iframeContents);
});
return false;
});
});
(我从互联网上复制了代码,但我不明白。)
有人能告诉我点击提交按钮会发生什么吗?发送什么?该文件为字节?因为我想编写我们的服务器端java处理程序,我需要理解这一点。 我想我花了太多时间试图理解这一点。
首先,我认为我们可以通过jQuerys POST方法发送文件,因为它适用于用户身份验证。但事实并非如此。
答案 0 :(得分:0)
说你的java类名为File.java
private List<MultipartFile> file;
String saveDirectory = System.getProperty("catalina.home");
List<MultipartFile> ListaFajlova = File.getFile();
List<String> fileNames = new ArrayList<String>();
if (null != ListaFajlova && ListaFajlova.size() > 0) {
for (MultipartFile multipartFile : ListaFajlova) {
String fileName = multipartFile.getOriginalFilename();
if (!"".equalsIgnoreCase(fileName)) {
multipartFile
.transferTo(new File(saveDirectory + File.separator+fileName));
fileNames.add(fileName);
}
}
}
这样您就可以在saveDirectory中保存文件,并获得保存在db中的文件名列表,以便于访问。
希望这有帮助。