Rails 配置 ckeditor 图片上传时,遇到返回数据的问题。希望解惑,困扰一下午了

lengcb · 2017年11月07日 · 最后由 huzidabanzhang 回复于 2018年03月27日 · 4303 次阅读

这是我的代码

asset = Asset::Image.new(file: params[:upload])
if result = asset.save
  js_text = '<script type="text/javascript">' + 'window.parent.CKEDITOR.tools.callFunction("' + request.params["CKEditorFuncNum"].to_s + '","' + asset.file.try(:url).to_s + '","");' + '</script>'
  render plain: "#{js_text}"
else
  render plain: "上传失败,#{asset.errors.full_messages}"
end

我查看了一下官网的返回数据的格式是 text/html,返回的内容是:

<script type="text/javascript">
    window.parent.CKEDITOR.tools.callFunction("0", "\/userfiles\/files\/Public%20Folder\/QQ20170903-0.jpg", "");
</script>

我返回的格式跟内容跟它一样,但是我返回的这段 js 没有被执行,只是以 text 文本方式显示出来。 希望高手给解惑

补充一下,这是我的返回数据

<script type="text/javascript">window.parent.CKEDITOR.tools.callFunction("1","/uploads/asset/image/file/0/49/1a52c2f9a7ba8333d76f2550e4bdb344.jpg","");</script>

只是一段 text 文本,没有被执行。我在控制台执行了一下,上传图片成功。所以问题应该就是出在这里,返回的这段代码没被执行。

这个也太老牌了吧,,,

pynix 回复

公司运营感觉 kindeditor 不好用,其实我觉得是他们不会用😁

pynix 回复

问题已解决

怎么解决的 能告诉一下吗

需要 登录 后方可回复, 如果你还没有账号请 注册新账号