2015-03-22 4 views
1

Я пытаюсь с помощью summernote с JSF, но я не знаю, почему это всегда возвращает пустую строку:Summernote возвращается пустая строка

<div class="form-group"> 
           <label>Conteúdo *</label> 
           <h:inputTextarea value="#{cursoMB.paginaConteudo.conteudo}" 
            id="conteudo" required="true" 
            requiredMessage="O conteúdo é obrigatório" 
            styleClass="form-control summernote"> 
           </h:inputTextarea> 
          </div> 

В моей JS файл:

$(document).ready(function() { 
    initSummerNote(); 
    jsf.ajax.addOnEvent(initSummerNoteAjax); 
}); 

function initSummerNoteAjax(data) { 
    if (data.status === 'success') { 
     jQuery('.summernote').summernote({ 
      height : 300, // set editor height 

      minHeight : null, // set minimum height of editor 
      maxHeight : null, // set maximum height of editor 

      focus : false 
     // set focus to editable area after initializing summernote 
     }); 
    } 
} 

Когда модальный называется summernote, но когда я сохраняю содержимое textarea, оно пусто.

ответ

0

Это происходит потому, что summernote плагина не сохраняет отредактированный текст в текстовом поле, чтобы получить отредактированный текст, который вы должны позвонить jQuery('.summernote').code()

Я предлагаю вам, что в кнопке, которую вы называете, чтобы сохранить значение добавить яваскрипт обработчик чтобы получить текст и добавить в текстовое поле с этим Jsf магазином строки в свойстве paginaConteudo.conteudo

function beforeSubmit() { 
    jQuery('.summernote').text(jQuery('.summernote').code()); 
} 

Также я предлагаю вам уничтожить виджет перед воссозданием АЯКСА вызова

jQuery('.summernote').destroy().summernote({.......... 

Примечание для людей, использующих summernote после v0.7.0: Вы должны использовать .summernote('code') и .summernote('destroy') в настоящее время.

После v0.7.0 были удалены прямые методы jquery, уничтожены и код, чтобы избежать конфликта с другими библиотеками jquery. Вы можете вызвать эти методы с помощью summernote api.

Смотрите также http://summernote.org/getting-started/#get-amp-set-code

+0

Я пытаюсь добавить в onsubmit формы jSF, но функция javascript не вызывается. См.: Shelly

+0

Я имел в виду, что у вас есть кнопка, которая сохраняет значение summernote, возможно, добавьте onclick = "beforeSubmit" –

+0

теперь работал, но когда я вставляю изображение, кошка tomcat. Есть ли у вас идеа? – Shelly

0

Для вашего всего используется summernote текстового поля, вы должны сделать петлю и установить реальные значения для реального текстового поля.

function beforeSubmit() 
    { 
    $('.summernote').each(function(v){ 
     $(this).val($(this).code()); 
     }); 
    } 
+0

Этот summernote - textarea, поэтому вы должны изменить этот $ (this) .val ($ (this) .code()); должен chage $ (this) .html ($ (this) .code()); –

Смежные вопросы