Ссылка на поля ввода текста в диалогах CKEditor - PullRequest
3 голосов
/ 15 мая 2010

Я играю с этим пару недель безуспешно ...

В диалоговом окне 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

Ответы [ 5 ]

6 голосов
/ 20 февраля 2011

Это было окончательное решение:

var dialog = CKEDITOR.dialog.getCurrent();
dialog.setValueOf('info','txtUrl',"http://google.com");
return false;
3 голосов
/ 03 октября 2012

внутри дополнительной части элемента, который я сейчас использую

dialog = this.getDialog();  
alert(dialog.getContentElement('info', 'grootte').getInputElement().$.id);  

и в результате выдает 'cke_117_select'. (Это блок выбора)

alert(dialog.getContentElement('info', 'txtUrl').getInputElement().$.id);  

дает 'cke_107_textInput'.
Я думаю, что это то, что вы (или другие посетители этой страницы) ищете.

2 голосов
/ 13 сентября 2011

У вас есть страница, содержащая CKEditor 3 и всплывающее диалоговое окно. Вы открываете из этого диалогового окна другое всплывающее окно, которое является страницей JSP. Чтобы установить значение для поля в диалоговом окне родительского окна CKEditor, выполните следующие действия:

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

Это относится к CKEditor 3.

0 голосов
/ 15 мая 2010

Посмотрите на пример диалогового окна 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';
0 голосов
/ 15 мая 2010

получить

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

и установите

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