Reference 在CKEditor对话框中引用文本输入字段

Reference 在CKEditor对话框中引用文本输入字段,reference,ckeditor,field,Reference,Ckeditor,Field,我已经玩了几个星期了,但是没有成功 在CKEditor对话框中,文本输入字段被重命名为一个唯一的数字-例如,id:“txtUrl”将变成类似于id='27_textinput' 我如何引用这个 // I feel it should be something like: var myfield = CKEDITOR.instances.myElement.document.$.body.getId('txtUrl'); // or maybe: var myfield = CKEDITOR

我已经玩了几个星期了,但是没有成功

在CKEditor对话框中,文本输入字段被重命名为一个唯一的数字-例如,id:“txtUrl”将变成类似于id='27_textinput'

我如何引用这个

// I feel it should be something like:

var myfield = CKEDITOR.instances.myElement.document.$.body.getId('txtUrl');

// or maybe:

var myfield = CKEDITOR.dialog.getContentElement('info','txtUrl');

// and then:

myfield.value = 'myvalue';
但是这些不起作用。请帮忙!提前感谢,R

获取

var ckValue = CKEDITOR.instances['txtUrl'].getData();
设定

CKEDITOR.instances['txtUrl'].setData(ckValue);

查看api对话框示例:

    // Get a reference to the "Link Info" tab.
    var infoTab = dialogDefinition.getContents( 'info' );

    // Set the default value for the URL field.
    var urlField = infoTab.get( 'url' );
    urlField['default'] = 'www.example.com';

这是最终的解决方案:

var dialog = CKEDITOR.dialog.getCurrent();
dialog.setValueOf('info','txtUrl',"http://google.com");
return false;

您有一个包含CKEditor 3的页面和一个弹出对话框。您可以从这个对话框打开另一个弹出窗口,即JSP页面。要在CKEditor父窗口的对话框中为字段设置值,请执行以下操作:

window.opener.CKEDITOR.dialog.getCurrent().getContentElement('dialogTabId', 'dialogTabFieldId').setValue('yourValue');

这适用于我现在使用的元素的onchange部分中的CKEditor 3。

dialog = this.getDialog();  
alert(dialog.getContentElement('info', 'grootte').getInputElement().$.id);  
结果是“cke_117_select”。(这是一个选择框)

给出“cke_107_文本输入”。

我想这就是您(或本页面的其他访问者)正在寻找的

嗨,谢谢你的快速回复!我在FireBug中看到“CKEDITOR.instances.txturl未定义”。该实例具有“name content_main”,因此我也尝试了:CKEDITOR.instances.content_main['txt_url'].setData('Hello world');但这也带来了同样的错误。好主意?嗨,对不起,我刚看到这个!根据您的指示,我在加载状态下尝试了以下操作。。。var infoTab=dialogDefinition.getContents('info');var urlField=infoTab.get('txtUrl');然后我想设置onLoad的值,下面的也一样,但它不起作用。urlField.setValue='www.example.com';希望你能帮忙!可能重复
alert(dialog.getContentElement('info', 'txtUrl').getInputElement().$.id);