在cshtml中显示FCKeditor编辑器控件

步骤:
1.    导入文件夹fckeditor
2.    导入dll文件(FredCK.FCKeditorV2.dll)
3.    在cshtml中的代码
@Html.Raw(ViewBag.FckEditor)

4.在Controller中的代码

     public ActionResult AddOthers(FormCollection fc)
        {
            FredCK.FCKeditorV2.FCKeditor editor = new FredCK.FCKeditorV2.FCKeditor();
            editor.ID = "MyFck";
            editor.Height = System.Web.UI.WebControls.Unit.Parse("500");
            editor.Width = System.Web.UI.WebControls.Unit.Parse("700");

            System.Web.UI.HtmlControls.HtmlForm hf = new System.Web.UI.HtmlControls.HtmlForm();
            hf.Controls.Add(editor);
            System.Web.UI.Page page = new System.Web.UI.Page();
            string controlOutput = string.Empty;
            page.Controls.Add(hf);
            StringBuilder sb = new StringBuilder();
            using (System.IO.StringWriter sw = new System.IO.StringWriter(sb))
            {
                using (System.Web.UI.HtmlTextWriter htw = new System.Web.UI.HtmlTextWriter(sw))
                {
                    Server.Execute(page, htw, false);// 调用这个方法将page内容转化成输入流
                    controlOutput = sb.ToString();//将html输出流转化为字符串
                }
            }
            ViewBag.FckEditor = controlOutput;
            return View();
        }

 5. 获取fckeditor编辑器的数据

function getData()
{
    //得到控件的html
    var checkContent = FCKeditorAPI.GetInstance("txtAdvancedDeeds").GetXHTML();
    alert(checkContent);
    //得到html的长度
    var len = FCKeditorAPI.GetInstance("txtAdvancedDeeds").GetXHTML().length;
    alert(len);
    //得到fck控件
    var oEditor = FCKeditorAPI.GetInstance('txtAdvancedDeeds');
    //得到编辑器中的文字
    var text = oEditor.EditorDocument.body.innerText;
    alert(text);
    //让编辑器得到焦点
    oEditor.Focus();
}

 

posted @ 2024-11-29 13:21  海角之上  阅读(3)  评论(0编辑  收藏  举报