javascript - 当内容未经编辑时,从 Summernote 表单中获取正确的 HTML

标签 javascript asp.net asp.net-core summernote razor-pages

我正在使用此代码在我的页面上显示 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/

相关文章:

c# - 如何通过服务器代码 C# 将 javascript 代码添加到 LinkBut​​ton?

c# - Entity Framework 4 升级问题,不允许同时按名称和属性加载

asp.net - 如何通过母版页隐藏某些页面上的内容而不是其他页面上的内容?

c# - Angular 应用程序无法在 dotnet core/IIS 下启动

asp.net - ASP.NET 核心中的无限重定向循环,同时强制执行 SSL

javascript - vue-dplayer 在选项中传递 url 后不加载视频

javascript - 设置表单默认参数

asp.net - beta5升级到beta6时出错

javascript - 为什么 Angular 项目不能像其他 JavaScript 项目一样在浏览器上运行

jquery - fullcalendar js 中未显示的事件