我有一个“模板”选择器,它允许人们更改当前文本区域的“text/html”。
因此,当它们更改模板时,我需要更新Summernote HTML。我看到了用于(insertText)的方法,但它不适用于HTML。
有HTML版本的解决方案吗?
我以为有一个.code()解决方案,但似乎不起作用?我收到一个错误,“不是函数”
任何帮助都将不胜感激!
$('.dialogMessageArea').summernote({
height:'230px',
focus:true,
toolbar: [
['style', ['bold', 'italic', 'underline', 'clear']],
['fontsize', ['fontsize']],
['para', ['ul', 'ol', 'paragraph']],
['table', ['table']],
['misc', ['fullscreen','undo','redo']]
]
});
$(document).on('change', '.messageTemplate', function() {
var templateId = $(this).selected().attr('value');
if(templateId) {
$.ajax({
type: "POST",
dataType: "json",
url: '/cont/templates/GetTemplate',
data: {'templateId': templateId},
success: function (data) {
$('.subjectMessage').val(data.results[0].subject);
if(data.results[0].template) {
$('.dialogMessageArea').code(data.results[0].template);
}
},
error: function () {
alert('We were not able to get your template');
}
});
}
});console.log($('.dialogMessageArea'));
console.log("<b>Welcome</b><h3>hello world</h3>");

发布于 2015-12-09 05:35:33
根据api (https://summernote.org/getting-started/#get--set-code),
若要更改wysiwyg的值,应使用summernote函数,其中“code”字符串为第一个参数,内容为第二个参数
就像这样:
$('.dialogMessageArea').summernote('code', data.results[0].template);发布于 2016-10-04 22:23:07
.summernote('pasteHTML', '<b>inserted html</b> ');发布于 2015-12-09 05:23:06
这应该会有效的
$('.dialogMessageArea').code('some value you want'); 注:
code()函数中的HTML必须是一个字符串。如果您试图插入invalid HTML内容,我不认为它会起作用。
尝试做这个
创建一个隐藏的div,然后在AJAX success方法中尝试从AJAX插入数据,然后使用jquery的text()函数检索数据。
<div style="display:none;" id="hidden_div">
success: function (data) {
$('.subjectMessage').val(data.results[0].subject);
if(data.results[0].template) {
$('#hidden_div').html(data.results[0].template);
$('.dialogMessageArea').code($('#hidden_div').text());
}
},https://stackoverflow.com/questions/34170950
复制相似问题