2013-11-18 3 views
0

В настоящее время я использую модель MVC и поле EditorFor с объектами Accordion.Использование TinyMCE с редакторомДля поля

<div id="accordionSub0"> 
@{ 
    int count = 0; 

    foreach(var item in @Model.ResolutionsList) 
    { 
     string textBoxID = "RichTextBox" + count; 
     string accordionSub = "accordionSub" + count; 
     var result = @Model.ResolutionsList[count].Resolutions; 
      <h3><a href="#">Step @count</a></h3> 
      <div id="@textBoxID" class="editor-field"> 
       @Html.EditorFor(model => model.ResolutionsList[count].Resolutions, 
       new 
       { 
        style = "width:" + 100 + "%; height:" + 5 + "em;" 
       }) 
      </div> 

     count++; 
    } 
} 
</div> 

Модель:

public partial class InformationDataModel 
{ 
    public int RID { get; set; } 
    public string Title { get; set; } 

    public string InfoType { get; set; } 

    [UIHint("tinymce_jquery_full"), AllowHtml] 
    public string Symptoms { get; set; } 
    [UIHint("tinymce_jquery_full"), AllowHtml] 
    public string Cause { get; set; } 
    [UIHint("tinymce_jquery_full"), AllowHtml] 
    public string Resolution { get; set; } 
    [UIHint("tinymce_jquery_full"), AllowHtml] 
    public string Resolution2 { get; set; } 
    [UIHint("tinymce_jquery_full"), AllowHtml] 
    public string References { get; set; } 

    public List<InformationResolutionsDataModel> ResolutionsList { get; set; } 

    public string IssuedDate { get; set; } 
    public string UserName { get; set; } 
    public string RelevantUsers { get; set; } 
    public string TagNames { get; set; } 
} 

public partial class InformationResolutionsDataModel 
{ 
    public int RID { get; set; } 

    public int ResolutionID { get; set; } 

    public bool IsDeleted { get; set; } 

    [UIHint("tinymce_jquery_full"), AllowHtml] 
    public string Resolutions { get; set; } 

    public string IssuedDate { get; set; } 
    public string UserName { get; set; } 
} 

Проблема заключается в @Html.EditorFor(model => model.ResolutionsList[count].Resolutions,

Они приносят значение в текстовое поле, но они не показывают с TinyMCE.

Итак, я проверяю источник просмотра на загруженном веб-сайте.

Они автоматически генерируются внутри.

$('#ResolutionsList[0].Resolutions').tinymce({ 

но текстовая область сторона.

textarea Length="22681" cols="20" id="ResolutionsList_0__Resolutions" name="ResolutionsList[0].Resolutions" rows="2" 

как вы можете видеть, что идентификатор неправильно генерирует нормальный случай MVC.

$('#References').tinymce({ 
... 
textarea Length="99" cols="20" id="References" name="References" rows="2" 

затем правильно сгенерирован.

Пожалуйста, дайте мне несколько советов, как я могу контролировать tinyMCE ids. Благодарю.

Ps. Вот TinyMCE_JQuery_Full.cshtml

$('#@ViewData.TemplateInfo.GetFullHtmlFieldName(string.Empty)').tinymce({ 
+0

Пожалуйста, пост кода частичного вида tinymce_jquery_full. – ataravati

+0

Уже отправлено! –

ответ

1

В вашем частичном виде, используйте ViewData.TemplateInfo.GetFullHtmlFieldId вместо ViewData.TemplateInfo.GetFullHtmlFieldName:

$('#@ViewData.TemplateInfo.GetFullHtmlFieldId(string.Empty)').tinymce({ 
    // ... 
}) 
+0

Ничего себе, большое спасибо –

Смежные вопросы