2016-12-30 80 views
1

我試圖在ASP.NET MVC 5中使用TinyMCE,但是,它似乎不起作用。 textarea出現了,但它是一個普通的textarea,並沒有豐富TinyMCE的功能。ASP.NET MVC 5中的TinyMCE Razor

查看\ Shared_Layout.cshtml

<link rel="stylesheet" type="text/css" href="~/Content/jquery.datetimepicker.css"/> 
<script src="~/Content/jquery.js"></script> 
<script src="~/Content/build/jquery.datetimepicker.full.min.js"></script> 
<script src="//cdn.tinymce.com/4/tinymce.min.js"></script> 
<script type="text/javascript"> 
    tinyMCE.init({ 
     mode: "specific_textareas", 
     editor_selector: "editorHtml", 
    }); 
</script> 

查看\ MyView的\ Create.cshtml

@Html.TextAreaFor(model => model.Corpo, new { htmlAttributes = new { @class = "form-control editorHtml" } }) 

任何提示嗎?

這樣

<textarea cols="20" htmlattributes="{ class = form-control editorHtml }" 
             id="Corpo" name="Corpo" rows="2"></textarea> 

+0

您是否檢查了JavaScript控制檯以查看是否有任何錯誤? – mason

回答

2

當前視圖代碼產生輸出這不看起來是正確的。它沒有添加你想要的CSS類,而是添加了一個名爲htmlAttributes的新屬性!爲什麼?因爲你以不正確的方式使用了輔助方法!

因此,修復您的幫助器方法調用中的錯誤代碼。第二個參數採用單個匿名對象。

@Html.TextAreaFor(model => model.Corpo, new { @class = "form-control editorHtml" }) 

這應該爲文本區域(檢查頁面的查看源代碼)生成正確的html代碼。

現在您的現有代碼來初始化富文本編輯器將工作。或者,您也可以使用Id選擇器。

<script> 

    tinymce.init({ 
     selector: "#Corpo" 
    }); 

</script> 
+0

正確的Shyju。我不應該使用'htmlAttributes'。 – Lernas