我正在使用Dropzone.js上传文件,但它表现得很奇怪。当我打开页面时,dropzone表单不显示,只显示后备字段。我拖的时候将文件拖放到浏览器中,浏览器打开该文件,然后我使用浏览器上的“返回”按钮显示Dropzone表单。我尝试在init函数中添加一个警报,只有当我按Back(第二个场景)时它才会触发。控制台中没有错误。这是代码:
<!-- Dropzone -->
<div id="dropzone">
<form action="<?php echo site_url('/settings/upload'); ?>" class="dropzone" id="upload">
<div class="fallback">
<input name="file" type="file" multiple />
</div>
</form>
</div>
<!-- Dropzone -->
<script src="<?php echo base_url(); ?>assets/common/theme/scripts/plugins/forms/dropzone/dropzone.min.js"></script>
<script type="text/javascript">
Dropzone.options.upload = {
paramName: "info",
maxFilesize: 0.1,
init: function() {
alert("test");
this.on("error", function(file, msg) {
alert(msg);
});
this.on("success", function(file, msg) {
var data = jQuery.parseJSON( msg );
if (data.success) {
alert("success");
} else {
alert(data.message);
}
});
}
};
</script>
答案 0 :(得分:0)
原来这是cloudflare火箭装载机的问题。使用data-cfasync =“false”从它中排除了两个<script>
语句并且它有效。