【问题标题】:Cannot append or post CKEditor value无法附加或发布 CKEditor 值
【发布时间】:2017-09-18 08:25:49
【问题描述】:

我在 ASP.NET MVC 应用程序中有一个 CKEditor,我无法附加或发布 textarea 的 updated 值,如下所示:

<textarea name="Description" id="Description" rows="10" cols="80">
    This is my textarea to be replaced with CKEditor.
</textarea>

<script>
CKEDITOR.replace('Description',
{
    filebrowserBrowseUrl: '/....',
    filebrowserUploadUrl: '/....'
});
</script>


function insert(event) {

    event.preventDefault();

    var desc = CKEDITOR.instances['Description'].getData(); //I obtain the updated text at this line
    var formdata = $('#frmCreate').serialize(); 

    formdata.append("Description", desc); //!!! This is not working !!!  

    $.ajax({
        type: "POST",
        url: '@Url.Action("Insert", "Blog")',
        cache: false,
        dataType: "json",
        data: formdata,

        success: function (response, textStatus, XMLHttpRequest) {
            $('#result').html(data);
        }
    });
};

我可以传递 textarea 的初始值(模型的描述属性),但在进行任何更改后,数据仍保持初始值。关于如何将描述字段传递给控制器​​的任何想法???

【问题讨论】:

  • 你总是可以使用$('#Description').val(data);然后var formdata = $('#frmCreate').serialize();
  • 附带说明一下,您有dataType: "json",,但似乎返回了html,这会引发异常。
  • @StephenMuecke 你每次都摇滚,非常感谢!.. 我需要澄清的一点>>> 1) 在这种情况下我可以使用 $('#property').val(dataValue); 为了将 dataValue 附加到我的属性而不是 append 方法??? 2) 我使用 [HttpPost, ValidateInput(false)] 来修复内部服务器错误并正常工作。但是,当为 dataType 尝试“html”或“text”时,问题并没有解决。有什么想法吗?
  • 你没有展示控制器方法,所以有点难以评论第 3 项。对于第 2 项,最好在 Description 属性上使用 [AllowHtml] 属性。
  • 对于第 1 项,我不熟悉 CKEDITOR 所以不知道为什么它不会自动更新输入的值,但请注意,如果你想“附加”一些东西到 @ 的输出987654329@ 然后你可以使用$.param (参考this answer。但是在你的情况下这不起作用,因为输出中只有Description 的第一个值将被DefaultModelBinder 绑定

标签: javascript jquery asp.net asp.net-mvc ckeditor


【解决方案1】:

当以传统方式(经典提交)提交表单时,CKEditor 会自动更新&lt;textarea&gt;。如果您使用的是 Ajax,则需要使用 https://docs.ckeditor.com/#!/api/CKEDITOR.editor-method-updateElement 手动更新 &lt;textarea&gt;

另请参阅CKEditor in Ajax Applications 示例。

【讨论】:

  • 非常感谢...这是更新CKEditor的快捷方式:)
猜你喜欢
  • 2015-05-17
  • 1970-01-01
  • 2020-06-04
  • 2014-06-02
  • 1970-01-01
  • 2017-03-12
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多