Dropzone.js 无法从 HTML 编辑器 CKEDITOR 中获取值

Posted

技术标签:

【中文标题】Dropzone.js 无法从 HTML 编辑器 CKEDITOR 中获取值【英文标题】:Dropzone.js is unable to grab the value from the HTML Editor CKEDITOR 【发布时间】:2016-11-15 00:22:17 【问题描述】:

处理允许用户将文件放入我的新帮助台工单模块的表单。我遇到的问题是,当我提交表单时,文本区域字段(使用 html 编辑器 CKEDITOR)在数据库中为空。我尝试了几种不同的选项来从 CKEDITOR 获取数据,但它们都没有与 dropzone 一起使用。希望也许有人知道如何解决这个问题,如果不是,我可能只需要查看拖放上传器的另一个选项。

这是我遇到问题的代码。

formData.append("description", jQuery("textarea#description").val());

我也试过

var html = CKEDITOR.instances.description.getData();

  Dropzone.options.myDropzone= 
  url: 'upload.php',
  autoProcessQueue: false,
  uploadMultiple: true,
  parallelUploads: 5,
  maxFiles: 5,
  maxFilesize: 1,           
  addRemoveLinks: true,
  init: function() 
     dzClosure = this;



 document.getElementById("submit-all").addEventListener("click", function(e)                       
 e.preventDefault();
 e.stopPropagation();
 dzClosure.processQueue();
 );

 //send all the form data along with the files:
 this.on("sendingmultiple", function(data, xhr, formData) 

 formData.append("department", jQuery("#department").val());
 formData.append("category", jQuery("#category").val());
 formData.append("subject", jQuery("#subject").val());     

 formData.append("description", jQuery("textarea#description").val());


 );

 

提前致谢!

【问题讨论】:

【参考方案1】:

我遇到了同样的问题,似乎 dropzone 发送了text 属性,而 ckeditor 更改了value。在处理队列之前试试这个,它对我有用:

 $("textarea#description").text($("textarea#description").val());

【讨论】:

【参考方案2】:

使用CKEDITOR.instances['description'].getData(),你会得到ckeditor的数据。 ['description'] 是用于调用ckeditor 的ID。我也遇到过同样的问题,已经用它解决了。

【讨论】:

以上是关于Dropzone.js 无法从 HTML 编辑器 CKEDITOR 中获取值的主要内容,如果未能解决你的问题,请参考以下文章

DropZone.js 上传无法以编程方式进行

加载Dropzone.js与Require.js

dropzone.js选项可能未放置在正确的位置

如何从 dropzone.js 上传和删除文件

Dropzone.js拖拽上传(简单示例)

如何使用 Dropzone.js 进行分块文件上传(仅限 PHP)?