我正在编写一个简单的dojo程序来将文件上传到服务器。但是每当我选择文件时,我都会收到一条错误信息,说输入意外结束。
dojo.require("dojox.form.Uploader");
//dojo.require("dojox.form.uploader.plugins.Flash");
var f1 = new dojox.form.Uploader({
url:"/IFixBuildWeb/UploadHandlerServlet/Upload"
,multiple:false
,label:"selectBtn"
,uploadOnSelect: true
}, "selectBtn");
f1.startup();
它允许我选择文件,但是在Chrome javascript控制台中,我收到一个错误,说输入意外结束。
我还没有创建一个表单,但刚刚制作了一个html表,而上传者就在其中。上面的代码有什么问题,或者是否需要制作表单并将其enctype设置为multiform / data?
我有一个onComplete的事件处理程序,它没有被触发。我在dojo网站上读到,这通常是因为所使用的插件类型与预期从服务器端返回的数据类型不匹配。但我不知道如何检查/确认这一点。任何帮助将不胜感激。
答案 0 :(得分:0)
我认为,您需要HTML5插件的HTML表单。如果你看到HTML5.js的源代码,你会看到 ... postCreate:function(){ this.connectForm(); ... Base.js中的connectForm方法使用HTML表单。
Flash和IFrame - 可能不需要。
答案 1 :(得分:0)
它是在IE中发生的(它回归到Flash上传模式)还是在所有浏览器中?