Summernote 所见即所得编辑器在代码视图中保存不工作 js/jquery
Summernote wysiwyg editor save in codeview not working js/jquery
我正在使用 Summernote 作为所见即所得的编辑器,但我遇到了一个问题。我的大部分文本编辑都是在代码视图中进行的,问题是如果您在代码视图中提交表单,编辑的文本不会被保存。
出于某种原因,我需要在代码视图和所见即所得视图之间切换以保存编辑的文本。有人知道如何解决这个问题吗?
我看过这个 Not saving content while in code view? #127 但它对我不起作用。
这是我的代码。
$(document).ready(function() {
$('#desc').summernote({
height: 1000, // set editor height
minHeight: null, // set minimum height of editor
maxHeight: null, // set maximum height of editor
focus: true, // set focus to editable area after initializing summernote
codemirror: {
mode: 'text/html',
htmlMode: true,
lineNumbers: true,
theme: 'monokai'
},
callbacks: {
onBlur: function() {
//should probably do something here
},
onInit: function() {
console.log('Summernote is launched');
$(this).summernote('codeview.activate');
}
}
});
});
如有必要,这里是html。
<textarea name="desc" id="desc" class="form-control" rows="40"></textarea>
尝试做这样的事情。
$(document).on("submit","#my-form-name",function(e){
$("#desc").val($('#desc').code());
return true;
});
$(document).on("submit","#my-form-name",function(e){
if ($('#desc').summernote('codeview.isActivated')) {
$('#desc').summernote('codeview.deactivate');
}
});
这会将 summernote 的代码值复制到文本的值中
$(#desc).on('summernote.blur.codeview', function() {
$(#desc).val($(desc).summernote('code'));
});
看起来使用 onblur 回调也可以工作:https://summernote.org/deep-dive/#initialization-options
$($('.summernote').closest("form")).on("submit",function(e){
if ($('.summernote').summernote('codeview.isActivated')) {
$(".summernote").val($('.summernote').summernote());
return true;
}
return true;
});
$($('.summernote').closest("form")).on("submit",function(e){
if ($('.summernote').summernote('codeview.isActivated')) {
$('.summernote').summernote('codeview.deactivate');
}
});
我正在使用 Summernote 作为所见即所得的编辑器,但我遇到了一个问题。我的大部分文本编辑都是在代码视图中进行的,问题是如果您在代码视图中提交表单,编辑的文本不会被保存。
出于某种原因,我需要在代码视图和所见即所得视图之间切换以保存编辑的文本。有人知道如何解决这个问题吗?
我看过这个 Not saving content while in code view? #127 但它对我不起作用。
这是我的代码。
$(document).ready(function() {
$('#desc').summernote({
height: 1000, // set editor height
minHeight: null, // set minimum height of editor
maxHeight: null, // set maximum height of editor
focus: true, // set focus to editable area after initializing summernote
codemirror: {
mode: 'text/html',
htmlMode: true,
lineNumbers: true,
theme: 'monokai'
},
callbacks: {
onBlur: function() {
//should probably do something here
},
onInit: function() {
console.log('Summernote is launched');
$(this).summernote('codeview.activate');
}
}
});
});
如有必要,这里是html。
<textarea name="desc" id="desc" class="form-control" rows="40"></textarea>
尝试做这样的事情。
$(document).on("submit","#my-form-name",function(e){
$("#desc").val($('#desc').code());
return true;
});
$(document).on("submit","#my-form-name",function(e){
if ($('#desc').summernote('codeview.isActivated')) {
$('#desc').summernote('codeview.deactivate');
}
});
这会将 summernote 的代码值复制到文本的值中
$(#desc).on('summernote.blur.codeview', function() {
$(#desc).val($(desc).summernote('code'));
});
看起来使用 onblur 回调也可以工作:https://summernote.org/deep-dive/#initialization-options
$($('.summernote').closest("form")).on("submit",function(e){
if ($('.summernote').summernote('codeview.isActivated')) {
$(".summernote").val($('.summernote').summernote());
return true;
}
return true;
});
$($('.summernote').closest("form")).on("submit",function(e){
if ($('.summernote').summernote('codeview.isActivated')) {
$('.summernote').summernote('codeview.deactivate');
}
});