Каково значение textarea по умолчанию для Summernote?
Может ли кто-нибудь помочь мне со значением по умолчанию textarea
для Summernote? Редактор выглядит правильно на странице (я могу изменить текст с помощью интерфейса), но POST не работает на основе моего понимания.
Я пробовал различные переменные POST, но ни один из них не кажется правильным. Примерами являются summernote
, note-codable
и text-area
. Последние два пришли из summernote.js. JQuery - это не то, с чем у меня много опыта, поэтому, пожалуйста, детка.
Это то, что я использую.
$('#summernote').summernote({height: 300});
var sHTML = $('#summernote').code();
и
<div name="summernote" id="summernote"><?php echo $news_body; ?></div>
Я также пробовал строки ниже отдельно, чтобы изменить имя textarea на content
:
var sHTML = $('#summernote').code();
$('#summernote').code();
var content = $('textarea[name="content"]').html($('#summernote').code());
$('textarea[name="content"]').html($('#summernote').code());
var sHTML = $('textarea[name="content"]').html($('#summernote').code());
var textareaValue = $("#content").code();
$("summernote").code(html);
Ответы
Ответ 1
Это оказалось очень простым решением. Корень путаницы - это документация, в которой говорится об использовании div. Вместо этого используйте текстовую область. Хотя summernote динамически создает текстовую область, все равно сделайте это. Это сработает.
Ответ 2
Я нашел рабочий пример использования Summernote с php, выполнив форму POST здесь.
Это немного запутанно, поэтому я объясню, что происходит.
Сначала вам нужно добавить текстовое поле, которое будет контейнером для содержимого сообщения. В примере есть один, называемый "контент". Текстовое поле удваивается как контейнер для редактора summernote, но вы можете так же легко использовать скрытую текстовую область и использовать div для контейнера summernote.
Чтобы получить данные из summernote в текстовое поле, вам нужно вызвать функцию .code() элемента summernote во время POST. В примере это делается путем установки обработчика onsubmit на функцию (называемую "postForm" в примере), которая находит элемент summernote, получает кодированный вход и устанавливает строку кодировки как html текстового поля.
Ответ 3
Попробуйте следующее:
var sHTML = $('.summernote').summernote('code')
Ответ 4
Summernote создает свою собственную область DOM, когда она инициализируется, даже если вы используете <textarea>
, ее разметка использует <div>
с атрибутом contentEditable для редактируемой области, которая, кстати, имеет класс note-editable
.
Если вы еще этого не сделали, я настоятельно рекомендую вам проверить https://summernote.org/deep-dive/ страницу для доступных функций API.