0
我刚刚开始使用CKEditor,并且无法完全理解该API以完成我的目标。CkEditor对话框事件处理
本质上,我在页面上有几个编辑器实例。但是,对于名称为htmlInput的编辑器,我想要收集添加到编辑器中的表单元素的名称。我得到的最接近的是在打开适当的对话框时弹出警告,但我无法提取这些框的名称字段的值。
这是我到目前为止。
CKEDITOR.on('dialogDefinition', function (e) {
var dialogName = e.data.name;
var dialog = e.data.definition.dialog;
if(e.editor.name == 'htmlInput' && (dialogName=='checkbox' || dialogName=='radio' || dialogName=='textfield' || dialogName == 'textarea' || dialogName == 'select'))
{
dialog.on('show', function (ev) {
alert('here');
});
}
});
如何获得有关检索元素名称?例如,如果有一个元素,我可以通过使用element.attributes.value来获取该值。当我键入element.name我得到'输入',当我键入element.attributes.name我得到未定义。我将如何去检索字符串'测试'? – user1620902
它完全正常工作。看[这个小提琴](http://jsfiddle.net/Q4sKF/)。 – oleq
嗯..我看到它工作一点点,但仍然有问题。例如,我看到它不起作用的主要案例是当你使用CKEditor的一部分提供的表单元素按钮时,它并不总是更新,至少它看起来不像我。我一直在使用两种方法来调用htmlFilter。第一个是通过.getData() - 这总是返回undefined。第二个是通过切换源模式和wysiwyg。这会每次调用htmlFilter,但似乎需要进行一些模式更改才能返回undefined。我试图用小提琴,我的配置 – user1620902