[英]MVC: Ace editor post
我目前正在编写CMS系统,并使用ACE语法高亮显示器突出显示文本框中的某些HTML。
现在,我有一个显示内容的表单:
<div id="editor">@Html.TextAreaFor(model => model.Body)</div>
使用以下javacsript激活语法高亮显示器:
<script>
var editor = ace.edit("editor");
editor.setTheme("ace/theme/eclipse");
editor.renderer.setShowGutter(false);
editor.getSession().setMode("ace/mode/html");
</script>
但是在我的控制器中,我没有得到hihglighted textarea的内容,这是正常的,因为语法高亮显示器正在生成复杂的HTML。
谁知道如何解决这个问题?
在将数据发布到服务器之前,必须将其分配给隐藏字段或返回文本区域。 这个问题已在StackOverflow上得到解答
@Jan Jongboom使用以下代码在帖子之前分配ACE编辑器的值:
<%=Html.HiddenFor(m=>m.Editor, new { @id = "hidden_editor" }) %>
<!-- this is jQuery, but you can use any JS framework for this -->
<script>
$("form").submit(function () {
$("#hidden_editor").val(editor.getSession().getValue());
});
</script>
这是MVC 2标记,但可以很容易地被Razor采用。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.