Ckeditor с мастером форм jQuery

Я создаю форму на основе мастера jQuery (форма разделена на 5 шагов) форму мастера, на последних двух шагах я поставил два ckeditor соответственно. Моя проблема в том, что эти два ckeditor не отвечают, т.е. они не принимают никаких входных данных. Я не могу понять, почему это происходит. тот же ckeditor отлично работает без мастера форм. Я думаю, что существует конфликт между плагином мастера форм и ckeditor, но не знаю, что именно там происходит.

Пример проекта на github, Ссылка на проект grails.

Edit1:

Это моя индивидуальная настройка:

<div class="form-content">
    <div class="wizard-ignore">
<script type="text/javascript">
<ckeditor:config var="toolbar_Mytoolbar">
[
    [ 'Bold', 'Italic', 'Underline', 'Scayt' ]
]
</ckeditor:config>

delete CKEDITOR.instances['${name}'];
CKEDITOR.config.scayt_autoStartup = true;
CKEDITOR.config.fillEmptyBlocks = false;
function CKupdate() {
    for (instance in CKEDITOR.instances) {
        CKEDITOR.instances[instance].updateElement();
    }
}
<ckeditor:editor name="${name}" height="100px" width="98%" toolbar="Mytoolbar">
<g:if test="${summary}">
    ${summary}
</g:if>
</ckeditor:editor>

</script>
</div>
</div>

Когда я помещаю alert (); утверждение в приведенном выше скрипте ckeditor работает в firefox. не удается найти основную причину. Любое предложение / идея будет мне полезна.

Edit2: пример проекта на github Ссылка на проект grails.


person Community    schedule 30.10.2013    source источник
comment
Вы проверили ошибки javascript в консоли?   -  person    schedule 30.10.2013
comment
Я использую firebug, но он не показывает ошибок javascript.   -  person Abs    schedule 30.10.2013


Ответы (2)


Ответ Яна Сундмана абсолютно правильный, просто добавьте класс wizard-ignore в редактор.


Вы используете плагин grails CKEditor, вы можете установить класс как

<script type="text/javascript">
$(function () {
    $("#${name}").addClass('wizard-ignore');

    <ckeditor:config var="toolbar_Mytoolbar">
    [
        [ 'Bold', 'Italic', 'Underline', 'Scayt' ]
    ]
    </ckeditor:config>

    delete CKEDITOR.instances['${name}'];
    CKEDITOR.config.scayt_autoStartup = true;
    CKEDITOR.config.fillEmptyBlocks = false;

    function CKupdate() {
        for (instance in CKEDITOR.instances) {
            CKEDITOR.instances[instance].updateElement();
        }
    }
});
</script>
<ckeditor:editor name="${name}" height="100px" width="98%" toolbar="Mytoolbar">
  <g:if test="${summary}">
    ${summary}
  </g:if>
</ckeditor:editor>

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

<g:textArea name="foo" class="wysiwyg wizard-ignore">
person Community    schedule 05.11.2013

Установите класс wizard-ignore в редактор, посмотрите, поможет ли это.

person Jan Sundman    schedule 30.10.2013
comment
Я добавил класс wizard-ignore в div, в который помещен ckeditor, но это ничего не изменило. - person Abs; 01.11.2013