我已经在我的 MVC 网站中使用 TinyMCE 设置了一个表单。为此,我在这样的局部 View 中有一个 ajaxForm:
<% using (Ajax.BeginForm(
(Model.ViewMode == ViewMode.Insert) ? "Create" : "Edit",
new AjaxOptions()
{
UpdateTargetId = CustomerViewModel.WindowContentContainerId,
OnFailure = "addValidation"
//OnSuccess = "refresh"
}))
{%>
bla bla
<p>
<label for="CustomerBaneer">
Baner:</label>
<%= Html.TextArea(CustomerViewModel.FieldPrefix + "CustomerBaneer", Model.CustomerToEdit.CustomerBaneer)%>
<%= Html.ValidationMessage(CustomerViewModel.FieldPrefix + "CustomerBaneer", "*")%>
</p>
<input type="submit" value="Save" class="save" />
<%}%>
<script type="text/javascript">
tinyMCE.init({
mode : "textareas"
});
}
</script>
tinyMce 组件呈现良好,我可以将我的文本更改为粗体、下划线等。但是,当我单击保存时,发送的请求带有没有格式的 textarea 内容(我已经用 firebug 对其进行了监控) .为什么? ajax形式默认开启HTML剥离功能吗?
谢谢。
最佳答案
在提交之前,您需要将 tinymce 中的文本保存到该文本区域。 函数 OnBegin 来不及了,所以我这样做了:
function tinyToText() {
ed = tinyMCE.getInstanceById('yourId');
if (ed) {
$("#yourId").val(ed.getContent());
}
}
<input type="submit" value="Send" onclick="tinyToText();" />
关于asp.net-mvc - 在 ASP.NET MVC 中使用 Ajax 表单的 TinyMCE,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1580938/