你们好吗?
我有一个asp.net网页表单,它用于在新闻内容中添加新闻,我想使用summernotehttp://summernote.org/超级简单的所见即所得编辑器。作为一个所见即所得的编辑器,所以有人能帮我保存这个编辑器的数据吗
这是我的代码
<div class="form-body">
<div class="form-group last">
<label class="control-label col-md-2">News Content</label>
<div class="col-md-10">
<div name="summernote" id="summernote_1"> </div>
<asp:label runat="server" text="Label" ID="news_con" ></asp:label>
</div>
</div>
</div>
我无法从summernote中获取文本值按此代码news_con.Text=请求.Form["summernote_1"];
您是否考虑过使用<textarea>
而不是<div>
来处理此问题?通常,它们在存储值方面更容易使用(因为它们是为这样做而设计的):
<textarea id="txtTest" runat="server"></textarea>
处理此问题的方法之一是使用Summernote的可用API注册事件,以便在焦点丢失时为<textarea>
元素设置HTML内容(例如onblur
):
<script>
$(function () {
// Set up your summernote instance
$("#txtTest").summernote();
// When the summernote instance loses focus, update the content of your <textarea>
$("#txtTest").on('summernote.blur', function () {
$('#txtTest').html($('#txtTest').summernote('code'));
});
});
</script>
由于您可能要在元素中存储HTML内容,因此您可能需要确保.NET不会认为您试图利用它。您可以通过更新页面的ValidateRequest
属性来显式设置此页面以忽略该过程:
<%@ Page ... ValidateRequest = "false" %>
或者,您可以尝试简单地转义正在设置的内容:
$('#txtTest').html(escape($('#txtTest').summernote('code')));