繁体   English   中英

CKEditor复选框默认值

[英]CKEditor Checkbox Default Value

我正在使用CKEditor的增强图像插件(image2),因为它允许用户插入带字幕的图像。 但是,默认情况下,我无法启用“字幕图像”复选框。

在此处输入图片说明

在下面的代码显示该值之后,设置断点,但继续取消选中该值。

CKEDITOR.on( 'dialogDefinition', function( ev ) {
// Take the dialog name and its definition from the event data.
var dialogName = ev.data.name;
var dialogDefinition = ev.data.definition;

if (dialogName == 'image2') {
    dialogDefinition.onShow = function() {
        captionField = this.getContentElement('info', 'hasCaption');
        captionField.setValue('checked');
        console.log(captionField);
        debugger;
    }
}
});

非常感谢您提供有关如何默认选中CKEditor复选框的任何建议。

更新

我尝试根据Marek的答案来更新代码以适应我的需要,但是dialogShow事件似乎没有这种方式被调用。

CKEDITOR.on('dialogShow', function( evt ) {
    var dialog = evt.data;
    if ( dialog._.name === 'image2' && !dialog.widget.isReady() ) {
        console.log('test');
        evt.data.getContentElement( 'info', 'hasCaption' ).setValue( true );
    }
});

您可以使用dialogShow事件,在其中可以修改对话框属性。

CKEDITOR.replace( 'editor1', {
    extraPlugins: 'image2',
    removePlugins: 'image',
    on: {
        dialogShow: function( evt ) {
            var dialog = evt.data;
            if ( dialog._.name === 'image2' && !dialog.widget.isReady() ) {
                evt.data.getContentElement( 'info', 'hasCaption' ).setValue( true );
            }
        }
    }
} );

注意这里我检查的部件是否实际存在的代码,那是因为你不想如果是编辑现有的小工具来修改此复选框。

由于我不知道的原因,该代码在内置SO代码平台中不起作用,因此,我所能做的就是删除codepen链接以检查实际代码

最后,我们正在研究一种适合您情况的解决方案。 您可以在https://github.com/ckeditor/ckeditor-dev/issues/2277上对其进行跟踪

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM