谁能帮我添加带有项目列表的下拉按钮。
因此,如果我单击项目,该项目应添加到实例上的光标位置。
我一直在使用 .Net MVC 进行此操作,但我采用了我的解决方案并将其转换为 PHP。
editor.ui.addRichCombo('clientfields', {
label: 'Client Fields',
title: 'Client Fields',
multiSelect: false,
init: function() {
<?php foreach($clientField as $field) { ?>
this.add(<?php print $field->VarName; ?>, '<?php print $field->Name; ?>', '<?php print $field->Name; ?>');
<?php } ?>
},
panel: {
css : [ editor.config.contentsCss, CKEDITOR.getUrl( '/Content/ckeditor/skins/moono/editor.css' ) ]
},
onClick: function (value) {
editor.focus();
editor.fire('saveSnapshot');
editor.insertHtml(value);
editor.fire('saveSnapshot');
}
});
这将在您的菜单中添加一个下拉菜单。我也有切割下拉标签的问题,但是将此css添加到CKEditor附带的editor.css文件中应该可以解决这个问题。
.cke_combo__clientfields, .cke_combo__clientfields > a {
width: 150px;
margin-right: 8px;
}
.cke_combo__clientfields .cke_combo_inlinelabel {
width: 120px;
}
此处的宽度可以调整为下拉菜单所需的宽度,但这应该允许您将 $field->VarName 添加到编辑器中光标所在的位置并替换编辑器中的选定文本。我不完全确定这里的 php 语法,但它肯定会让你指向正确的方向。