javascript jQuery$。将图像文件发送到servlet后
我有一个javaee
项目。我想通过ajax将图像文件发送到我的servlet。
Ajax没有将图像文件发送到我的java类。但它正在发送textarea值。
这是我的表格
<form enctype="multipart/form-data" beanclass="ActionBean">
<input type="file" id="uploadFile" name="newAttachment"/>
<textarea name="name" id="name" rows="2" cols="30"></textarea>
<s:submit value="Edit" name="saveOfferInfo" onclick="return edit(this);" />
JavaScript函数:
function edit(button) {
var form = button.form;
var params = $(form).serializeArray();
params.push({name: '_eventName', value: button.name});
$.post(form.action, params, function (data) {
alert("success");
});
# 1 楼答案
看看^{} 的文件,它明确地说
不幸的是,用AJAX上传文件并不是那么简单。有一个详细的教程here使用直接的JQuery。要点是你需要:
change
事件处理程序工作太多
或者,如果您不介意在代码中包含插件,以下是一些选项:
或者正如Rohan指出的,如果你使用HTML5,你可以探索FileReader API
# 2 楼答案
使用AJAX无法上传文件,请查看更多详细信息
这个概念:
Read more
如果你不关心旧版本的浏览器,并且想为最新的浏览器编码,那么你可以使用FileReader API参见Using HTML5 file uploads with AJAX and jQuery