我正在使用此代码在我的页面上显示 Summernote 编辑器
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>bootstrap4</title>
<script src="https://code.jquery.com/jquery-3.2.1.slim.min.js"></script>
<link href="https://cdnjs.cloudflare.com/ajax/libs/summernote/0.8.9/summernote-lite.css" rel="stylesheet">
<script src="https://cdnjs.cloudflare.com/ajax/libs/summernote/0.8.9/summernote-lite.js"></script>
.
.
.
<textarea id="summernote" name="summernote">@Model.InviteEmailBody</textarea>
<script>
$('#summernote').summernote({
tabsize: 4,
height: 220
});
$('#summernote').on('summernote.blur', function () {
$('#summernote').html($('#summernote').summernote('code'));
});
$('#summernote').html(escape($('#summernote').summernote('code')));
</script>
然后保存到数据库
string str = Request.Form["summernote"];
string htmlEncoded = WebUtility.HtmlEncode(str);
roleToUpdate.InviteEmailBody = htmlEncoded;
当我实际编辑内容时一切都很好,但是当我不编辑内容时,我在 str 变量中得到的值有很多
%3Cdiv%3EHello%20
我不确定我实现 Summernote 的方式是否正确,或者我将如何解决这个问题..如果有人可以提供帮助,我将不胜感激
最佳答案
这个垃圾是由
产生的$('#summernote').html(escape($('#summernote').summernote('code')));
如果您想清理您的textarea
(或预置一些文本),您可以使用以下语法。第二个参数是您要设置的字符串值:
$('#summernote').summernote('code', '')
$('#summernote').html(escape($('#summernote').summernote('code', '<b>some</b>')));
关于javascript - 当内容未经编辑时,从 Summernote 表单中获取正确的 HTML,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49376279/