我一直在寻找一种将使用选择的文件发布dojox.form.Uploader
到我的 servlet 的正确方法,但无法发布。似乎没有适合 dojo 的文档,也没有太多示例/演示/教程。回应将非常感谢。
我在 JSP 中的代码是
<tr>
<td colspan="9"><h2>File Upload<br /></h2><h3>To add 800#s using a file</h3></td>
</tr>
<tr>
<td colspan="9"><input type="file" data-dojo-type="dojox.form.Uploader" label ="Browse" multiple="false" id="uploader" onchange="check();" uploadOnSelect="true" url="/MyProject/app/ActionRequestHandlerServlet"/>
<div id="files" data-dojo-type="dojox.form.uploader.FileList" uploaderId="uploader" ></div>
</td>
</tr>`
Javascript代码包括以下
function check() {
alert(dijit.byId("uploader").value);
formPostObject.file = dijit.byId("uploader").value;
sendFile();
}
function sendFile() {
dojo.io.iframe.send({
url: "/MyProject/app/ActionRequestHandlerServlet", // Replace with yours
method: "post",
handleAs: "text",
form: dojo.byId("uploader"),
load: function(response, ioArgs) {
console.log("Upload OK", response, ioArgs);
return response;
},
error: function(response, ioArgs) {
console.log("Upload FAILED!!!", response, ioArgs);
return response;
}
});
}
上面的代码没有给我任何回应。我的 servlet 中的 sysout 语句也没有打印。这会在 dojo.js 上出现 JS 错误 -> 'length' 为 null 或不是对象。因为我没有在代码中的任何地方使用长度。请你帮我解决这个问题。提前非常感谢。