MVC5如何将TinyMCE值绑定到模型

时间:2014-12-09 07:04:23

标签: javascript c# jquery asp.net-mvc tinymce

我试图将TinyMCE绑定到我的模型中,但它总是在回发时返回null。我的代码:

查看:

@Html.TextAreaFor(Function(m) m.LangValue)

<script>
    $(document).ready(function () {
        tinymce.init({selector: 'textarea'});
    })
</script>

型号:

<Required(ErrorMessage:="Required")> _
<Display(Name:="LangValue")> _
<StringLength(8000, ErrorMessage:="Maximum 8000 characters")> _
<AllowHtml()> _
Public Property LangValue As String
    Get
        Return _langValue
    End Get
    Set(value As String)
        _langValue = value
    End Set
End Property

如果我删除了tinymce脚本,那么我正常工作,所以我检查了HTML,似乎TinyMCE用display:none隐藏了textarea,并用自己的UI替换它。是否可以在回发时用TinyMCE编辑器值替换textarea值?

任何帮助将不胜感激。抱歉英文不好。

2 个答案:

答案 0 :(得分:0)

如果您想强制TinyMCE填充隐藏字段,您可以在提交之前使用此功能:

tinyMCE.triggerSave();

答案 1 :(得分:0)

所以,我通过移动脚本来修复它

$(document).ready(function () {
        tinymce.init({selector: 'textarea'});
    })

从EditorTemplates到我的布局。

如果我把它放在EditorTemplates中,我不知道它为什么不起作用,因为我的版面在@RenderBody之后没有任何东西,也许有人可以启发我。