当使用ajax提交带有使用CkEditor的textarea的表单时,服务器端的帖子是空的。
如果我删除CkEditor,则会过帐该值。有什么想法吗?
答案 0 :(得分:25)
在提交时,运行以下代码:
for (instance in CKEDITOR.instances) {
CKEDITOR.instances[instance].updateElement();
}
..基本上对于AJAX,您需要强制CKEditor更新您的textareas,以便它们包含您在CKEditor窗口中看到的数据。有关详细信息,请参阅this question。
答案 1 :(得分:0)
您实际上不需要使用JS更新任何内容。您要做的就是确保您的文本区域(在CKEDITOR.replace()
上用$(document).ready()
替换的文本区域)与您要为其设置值的属性的名称相同,例如:
<textarea id="editor" name="Body">@Model?.Body</textarea>
答案 2 :(得分:0)
这对我有用:
CKEDITOR.replace( 'content' );
function updateAllMessageForms()
{
for (instance in CKEDITOR.instances) {
CKEDITOR.instances[instance].updateElement();
}
}