带有 formcollection 序列化的 tinymce 文本编辑器

tinymce text editor with formcollection serialize

谁能告诉我如何使用 formcollection.serialize 方法序列化 tinymce 文本编辑器内容? 我尝试使用 :

tinyMCE.init({
    selector: "textarea"
});


$("#btnEmail").click(function () {          
    tinyMCE.triggerSave();
    $.ajax({
        url: '@Url.Action("Email")',
        type: "POST",
        data: $('#emailform').serialize(),// + "&emailContent=emailContent",
        // data: data,
        dataType: "json",
        traditional: true
    });
});
<textarea name="emailContent" id="emailContent" style="width: 100%" ></textarea>

public ActionResult 电子邮件(FormCollection 数据) { foreach(data.AllKeys 中的 var 键) { 变量值=数据[键]; } 字符串内容=数据["emailContent"]; }

经过多次尝试终于完美解决了这个问题。我的代码中缺少两件事:1. 在 ajax 调用之前提交表单和 2. 在我的控制器上方添加一个属性 [Validateinput(false)]。下面是最终解决方案:

   // Controller
    [ValidateInput(false)]
    public ActionResult Email(FormCollection data)
    {
        foreach (var key in data.AllKeys)
        {
            var value = data[key];
        }
       string Content = data["emailContent"];
    }

Javascript:

   tinyMCE.init({
        selector: "textarea"           

    });

//========电子邮件按钮

     $("#btnEmail").click(function () {
         tinyMCE.triggerSave(true, true);
        $('#emailform').submit();
        $.ajax({
            url: '@Url.Action("Email")',
            type: "POST",

            data: $("#emailform").serialize(),
            dataType: "json",
            traditional: true

        });
    });

//========= HTML
<textarea name="emailContent" style="width:100%"></textarea>