这是一个非常简单的JavaScript调用:
CKEDITOR.instances.yourEditorInstance.getData()
返回:
<p id="rand_dom_123">Python A B C</p>
<p id="rand_dom_852">PHP A B C D E F</p>
然而:
CKEDITOR.instances.yourEditorInstance.editable().getText()
返回:
Python A B C
PHP A B C D E F
这是我的代码:
$('.jquery_ckeditor').ckeditor(config);
CKEDITOR.instances['editor'].on('blur', function() {
var html_content = CKEDITOR.instances['editor'].getSelection().getSelectedText() ;
alert(html_content);
});
如何获取所选段落的ID
?示例我可以在选择A B C
答案 0 :(得分:1)
这是你的最新小提琴..
Jquery的:
var editor = CKEDITOR.instances['my-editor'];
var value = CKEDITOR.instances['my-editor'].editable().getText();
alert(value); // will return both p element texts
var firstPElement = $(editor.editable().$).find('p:eq(0)'); // will select first p element
alert(firstPElement.attr("id")); // will get first p element ID
var secondPElement = $(editor.editable().$).find('p:eq(1)'); // will select second p element
alert(secondPElement.attr("id")); // will get second p element ID
注意:$(editor.editable().$)
: - 检索编辑器可编辑区域的本机DOM元素,以便将jquery用作元素
答案 1 :(得分:1)
您可以访问文档DOM
CKEDITOR.instances['editor'].on('blur', function() {
var html_content = CKEDITOR.instances['editor'].document.$.getElementById('myId') ;
alert(html_content);
});
或者您可以使用CKEDITOR DOM
var element = new CKEDITOR.dom.element( document.getElementById( 'myId' ) );
--- ---更新
如果您只想要选择而不是range:
var ranges = CKEDITOR.instances['editor'].getSelection().getRanges();
for (var i = 0, len = ranges.length; i < len; ++i) {
//dig into ranges[i]
}