我有一个标准表单,其中包含一个调用 tinymce 的文本框。一切都很好,但是当我发布到我的操作时,该字段的 FormCollection 是空白的。我已将 ValidateInput 设置为 false 以防万一,但仍为空白。我相信这个问题是因为我使用 jQuery Form 插件发布。
谢谢
我有一个标准表单,其中包含一个调用 tinymce 的文本框。一切都很好,但是当我发布到我的操作时,该字段的 FormCollection 是空白的。我已将 ValidateInput 设置为 false 以防万一,但仍为空白。我相信这个问题是因为我使用 jQuery Form 插件发布。
谢谢
您必须在发布前告诉 TinyMCE 编辑器将内容保存回文本区域。
$('#btnSave').click( function(){
tinyMCE.triggerSave(true,true);
$('#myform').submit();
});
triggerSave 解决方案将起作用。我在测试 TinyMCE 4.2.5 时遇到了同样的问题,并发现从 TinyMCE 所针对的文本区域控件中省略“名称”属性也会导致它失败(即,将空值发布到控制器)。只需将“名称”属性添加到 textarea 控件即可修复它,而无需应用 triggerSave 脚本。
所以 textarea 从这里开始:
<textarea id="mceText"></textarea>
为此,不使用 triggerSave() 函数:
<textarea id="mceText" name="mceText"></textarea>
也许这将有助于将来的某人。谢谢。
我解决了一个解决方法
将tinymce的内容放在隐藏字段中
var loquesea= tinyMCE.get('mytiny').getContent();
$("#fieldHidden").val(loquesea);
在控制器中是必须写<ValidateInput(False)>
的,因为控制器接收html字符
<ValidateInput(False)>
Function saveItem(ByVal KeysCollections As FormCollection) As ActionResult
Dim ID As String = KeysCollections("fieldHidden")
End Function