我正在使用ckeditor 4.x.我正在使用对话框创建一个小部件。我正在创建一个带有一些文本输入字段的对话框。我想在对话框中添加一个按钮(例如新字段)以动态添加新的输入文本字段。
答案 0 :(得分:0)
我为此目的使用了这样的东西:
CKEDITOR.on('dialogDefinition', function(ev) {
var onSelectCb = function(url) {
var fieldlName;
if (ev.data.name === 'link') {
fieldlName = 'url';
} else if (ev.data.name === 'image') {
fieldlName = 'txtUrl';
} else if (ev.data.name === 'flash') {
fieldlName = 'src';
}
CKEDITOR.dialog.getCurrent().setValueOf('info', fieldlName, url);
};
if (['link', 'image', 'flash'].indexOf(ev.data.name) !== -1) {
ev.data.definition.getContents('info').get('urlOptions').children.push({
type: 'hbox',
children: [{
type: 'button',
id: 'browseQpSite',
label: 'Просмотр библиотеки сайта',
onClick: onBrowseSiteLibrary.call(onSelectCb)
},
{
type: 'button',
id: 'browseQpContent',
label: 'Просмотр библиотеки контента',
onClick: onBrowseContentLibrary.call(onSelectCb)
}]
});
}
});
CKEDITOR.replace(self._editorElem.id, getCkEditorConfig(self));
}
此代码使用自定义onClick处理程序添加两个按钮