1

H7i 伙计们,我在使用 TinyMce 编辑器时遇到了一个奇怪的问题。我要做的是选择一些文本,单击一个按钮并在开头和结尾附加一个标签。

例如,如果原始文本是<p>hello</p>,则结束文本是<myTag><p>hello</p></myTag>

它可以正常工作,但选择单行文本时,不会返回现有标记。所以在前面的例子中,我会得到helloonly 而不是<p>hello</p>

当我选择多行时,它会返回标签。

这是我到目前为止所尝试的:

            var se = ed.selection.getContent(); //Doesn't return tags on single line
            var be = ed.selection.getNode().outerHtml; //Doesn't work with multiline
            var ke = ed.selection.getContent({ format: 'raw' }); //Same as the first option

有什么帮助吗?

4

2 回答 2

1

您将需要使用不同的功能来获取内容,具体取决于用户选择的内容

var node = ed.selection.getNode();

if (node.nodeName != 'P' )
{
     content = ed.selection.getContent();
}
else content = node.outerHtml;
于 2012-10-11T07:29:05.643 回答
1

我用这个,效果很好:

var textt= tinyMCE.activeEditor.selection.getContent({format : 'text'});
alert(textt);

但请注意:您不应选择从段落开头到段落结尾的文本,

enter image description here

because in that case(maybe bug of TinyMce), it cant get content .

于 2014-01-24T10:22:40.660 回答