Jquery CKEDITOR replace()引用元素不';行不通

Jquery CKEDITOR replace()引用元素不';行不通,jquery,ckeditor,Jquery,Ckeditor,我想知道,为什么我不能从元素上的CKEDITOR调用replace()函数,但如果我给该元素一个ID,我可以调用replace引用该ID? 这是我的函数(ele来自onclick=myFunction(This)) 如何调用仅引用元素的replace() <textarea id="myfield" name="myfield"></textarea> ... CKEDITOR.replace( 'myfield' ); var textarea = document.

我想知道,为什么我不能从元素上的
CKEDITOR
调用
replace()
函数,但如果我给该元素一个ID,我可以调用
replace
引用该ID? 这是我的函数(ele来自
onclick=myFunction(This)

如何调用仅引用元素的
replace()
<textarea id="myfield" name="myfield"></textarea>
...
CKEDITOR.replace( 'myfield' );

var textarea = document.body.appendChild( document.createElement( 'textarea' ) );
CKEDITOR.replace( textarea );
... CKEDITOR.replace('myfield'); var textarea=document.body.appendChild(document.createElement('textarea'); CKEDITOR.replace(文本区域);
var\u sh=$(ele).最近的(“li”).查找(“[name='shortcode[]”)为您提供一个jQuery对象。您需要遍历它来访问每个DOM元素,并调用
replace()
,如下所示:

_sh.each(function() {
    CKEDITOR.replace(this);
});
CKEDITOR.replace(_sh.get(0));
或者,如果您知道
find()
将只返回一个元素,则可以像这样使用DOM元素:

_sh.each(function() {
    CKEDITOR.replace(this);
});
CKEDITOR.replace(_sh.get(0));

更多信息:

.each()
方法旨在使DOM循环构造简洁 而且不容易出错。调用时,它会迭代DOM元素 是jQuery对象的一部分。每次回调运行时,它都是 已通过从0开始的当前循环迭代。更重要的是,, 回调是在当前DOM元素的上下文中激发的,因此 关键字
引用元素

.get()
方法授予对每个jQuery对象下面的DOM节点的访问权。指定索引后,
.get(index)
检索单个元素

console.log($(“li”).get(0))

每个jQuery对象也伪装成一个数组,因此我们可以使用数组解引用操作符来获取列表项:

console.log($(“li”)[0])


是的,您不需要创建元素。我想它将与
name
一起工作。但是我所有的文本区域都有相同的名称,因为我需要它们作为数组谢谢,是的,我的find返回一个元素,现在它工作了:D