【发布时间】:2014-07-08 18:18:18
【问题描述】:
我在我们的 Web 应用程序的 UserControl 上嵌入了 CKEditor。在我的本地机器和我们的服务器上加载 CKEditor 的默认模板时一切正常。
我正在从数据库表中获取模板,将结果转换为适当的 JSON 格式,然后将其写入 javascript 文件以添加到 CKEDITOR.template_files。
我在js文件中生成的js内容示例:
CKEDITOR.addTemplates('templateskey',{imagesPath:'',templates:[{title:'LCH - Complaint', image:'', description:'Message Template - Complaints', html:'HtmlContent'}]});
现在我的问题是,在我们的服务器上,我动态创建的 js 文件似乎被阻止了,因为它应该通过 HTTPS 加载。找不到这个文件或我的文件。
[blocked] 'https://...' 的页面是通过 HTTPS 加载的,但运行 来自“http://...”的不安全内容(找不到页面 url):此内容 也应该通过 HTTPS 加载。
在此 CKEDITOR.config 尝试加载“templatesKey”模板但失败后:
未捕获的类型错误:无法读取未定义的属性“imagesPath”
我已经下载了 CKEditor 的 ASP.Net 版本,并将该项目包含在我的解决方案中。我在后面的代码中设置了 myCKEditor.TemplatesFiles 和 myCKEditor.Templates:
myCKEditor.TemplatesFiles = "['" + relativePath + "']";
myCKEditor.Templates = "templateskey";
是我动态生成js文件的问题吗?还是模板插件通过 HTTP 而不是 HTTPS 加载内容的问题?有没有更好的方法来动态添加模板到 CKEditor?
【问题讨论】:
-
一个可能的 Ajax 解决方案。 stackoverflow.com/questions/12636696/…
标签: javascript asp.net templates dynamic ckeditor