Я использую CKEditor на веб-странице с JQuery. Задача состоит в том, чтобы позволить пользователю вставлять токены в текст. Жетоны приходят из поля выбора. Таким образом, пользователь может написать:
Здравствуйте,% имя%,
Наши записи показывают, что ваш текущий почтовый адрес% current-mailing-address% .......
Идея заключается в том, что после публикации формы токены будут анализироваться для каждого тела в списке «Кому», а затем будут отправляться персонализированные электронные письма.
Мой подход примерно такой:
В поле выбора JQuery onChange я спрошу экземпляр CKEditor, какова текущая позиция каретки, затем вставлю токен в эту позицию.
Текстовая область определяется как:
<textarea rows="10" cols="100" id="wysiwyg" name="emailText"></textarea>
CKEditor Jquery привязка:
var config = {
skin:'v2',
toolbar : 'Basic'
};
$('#wysiwyg').ckeditor(config);
wysiwyg
- это идентификатор TEXTAREA.
Я хотел протестировать некоторые базовые функции событий и попробовал следующее, но, похоже, ни один из них не работает:
$('#wysiwyg').on( 'click', function() {alert('honum'); }); // Does not work
var editor = CKEDITOR.instances.wysiwyg;
$(editor).on('click', function(evt) {alert('honum'); }); // Does not work
var element = CKEDITOR.document.getById( 'wysiwyg' ); // No luck here either
element.on( 'click', function( ev ) {
alert('hohum');
});
Может кто-нибудь сказать, пожалуйста, что я делаю не так? Как правильно решить эту проблему, любые указатели будут с благодарностью.