我在dropzone实现中为拖放文件做了一点努力。我正在开发一个前端有Seaside的Smalltalk平台。目前,我可以上传文件但无法看到成功图标以及上传时出现的进度条。当我检查网络上的元素时,我确实看到代表成功/进展的div存在。我确实看到文件大小和文件名出现就像文件被丢弃一样。有人可以指出我错过了什么吗?我的代码如下:
| serverURL url |
serverURL := RepWebSettings portalSettingsWebServerURL ifNil: [self session requestContext request uri serverURL].
url := serverURL ,
html context actionUrl printString ,
'&' , (html callbacks store: (Seaside.WAValueCallback on: [self uploadFileDroppedFiles])).
html div class: 'layoutBorder'; with: [
html div id: 'draganddropupload'; class: 'dropzone';
with: [
html div class: 'dz-message'; with: [
html image url: RepWebFileLibrary / #draganddropPng]]].
html script: ('
$(document).ready(function () {
Dropzone.autoDiscover = false;
Dropzone.uploadMultiple = true;
Dropzone.createImageThumbnails = false;
$("#draganddropupload").dropzone({
url: "%1",
success: function (file, response) {
document.location.reload(true);
}
});
});' bindWith: url).
答案 0 :(得分:0)
当您使用Chrome的开发者工具运行您的示例时,该工具开启了“控制台”功能。选项卡你看到了什么javascript错误?似乎Dropzone管理进度条和复选标记。
从他们的简单例子看:
https://github.com/enyo/dropzone/blob/gh-pages/examples/simple.html
您获得的内容与他们获得的内容之间的唯一区别在于,他们正在使用'表格'标记为' dropzone'上课,你正在使用' div'标签。
因此,Dropzone可能希望以“#”形式运营。并且没有任何其他形式的输入。因此,如果是我,我将海边代码中的div标签更改为表单,并确保新表单没有嵌套在页面上的另一个表单中。