2015-12-16 2 views
0

Это мой селектор (я использую TinyMCE 4.2.8)TinyMCE редактор показывает только первый элемент

$(document).ready(function() { 
     tinymce.init({ 
      selector: "textarea", 
     }); 
    }); 

я есть 1-10 текстовых областей на странице внутри рушится, что я хочу, чтобы преобразовать в TinyMCE редакторов

По какой-то причине только первый получает преобразование, а остальные - обычные нормальные текстовые поля.

Я использую MVC, чтобы сделать коллапс, как вид с макетом установлен в нуль

Что может быть не так?

HTML код

<div class="table-responsive"> 
     <table class="table table-bordered table-striped"> 
      <tr> 
       <th>Huvudkategori</th> 
       <th>ID</th> 
       <th>Antal subkategorier</th> 
       <th> 
        @using (Html.BeginForm()) 
        { 
         <div class="row"> 
          <div class=" col-lg-12 col-md-12 col-sm-12 col-xs-12"> 
           <input id="searchString" name="searchString" class="form-control float-left" style="width: 75%" type="text" placeholder="Sök"> 
           <input value="Sök" type="submit" class="btn btn-info float-left" style="width: 25%" /> 
          </div> 
         </div> 
        } 
       </th> 
      </tr> 
      <tbody> 
       @foreach (var item in (IEnumerable<Categories>)ViewBag.Categorys) 
       { 
        <tr> 
         <td>@item.CategoryName</td> 
         <td>@item.CategoryId</td> 
         <td>@item.SubCategories.Count()</td> 
         <td class="text-center"> 
          @Html.ActionLink("Underkategorier", "Index", "SubCategory", new { id = item.CategoryId }, new { @class = "btn btn-info" }) 
          <a class="btn btn-info" href="#@item.CategoryId" data-toggle="collapse">Detaljer</a> 
          @Html.ActionLink("Ta bort", "Delete", new { id = item.CategoryId }, new { @class = "btn btn-danger" }) 
         </td> 
        </tr> 
        <tr class="collapse" id="@item.CategoryId"> 
         <td colspan="4"> 
          <div class="well"> 
           @Html.Action("Details", new { id = item.CategoryId }) 
          </div> 
         </td> 
        </tr> 
       } 
      </tbody> 
     </table> 
    </div> 
    @Html.PagedListPager((IPagedList)ViewBag.Categorys, page => Url.Action("Index", new { page }), PagedListRenderOptions.ClassicPlusFirstAndLast) 

Подробности HTML

@model Admin2.Models.Categories 
@{ 
    ViewBag.Title = "Kategorier"; 
    Layout = null; 
} 
@using (Html.BeginForm("DetailsSave", "Category", FormMethod.Post)) 
{ 
    @Html.ValidationSummary(true) 
    @Html.HiddenFor(model => model.CategoryId) 

<div class="well"> 
    <div class="col-lg-12 col-md-12 col-sm-12 col-xs-12"> 
     <div class="row"> 
      <div class="editor-label"> 
       @Html.LabelFor(model => model.CategoryName, "Kategorinamn ", 
         new { @class = "text-info-large", @style = "" }) 
      </div> 
      <div class="editor-field"> 
       @Html.TextBoxFor(model => model.CategoryName, new { @class = "form-control" }) 
      </div> 
     </div> 
     <div class="row"> 
      <div class="editor-label"> 
       @Html.LabelFor(model => model.CommonDescription, "Beskrivning ", 
         new { @class = "text-info-large", @style = "" }) 
      </div> 
      <div class="editor-field"> 
       @Html.TextAreaFor(model => model.CommonDescription, new { @class = "form-control" }) 
      </div> 
     </div> 
    </div> 
</div> 
<div class="row padding20pxTop"> 
    <div class="col-lg-12 col-md-12 col-sm-12 col-xs-12"> 
     <input id="saveInfo" type="submit" value="Spara" class="btn btn-info textWhite float-right" /> 
    </div> 
</div> 
} 
+0

В примере кода есть только один TextArea ... вы получаете TinyMCE в свойстве CommonDescription? – Nirman

+0

Он отображает 1-10 раз в зависимости от количества элементов в ViewBag.Categorys Я делаю, но только первый получает редактор, если есть более одной категории, другие не получат редактор, если это создает ощущение? – Kladfizk

+1

Я предполагаю, что '@ Html.Action (« Details », new {id = item.CategoryId})' генерирует несколько экземпляров представленного вами 'Details.cshtml', который генерирует недопустимый html (дубликаты атрибутов id для каждый элемент управления), и поскольку вы можете отправлять только одну форму за один раз, ее немного непонятно, что вы пытаетесь достичь с этим. –

ответ

1

Да, я считаю, что проблема, возможно, потому что все «TextArea» контроль на вашей странице, имеющих тот же идентификатор и то же имя. Так, например, если на вашей странице есть 10 элементов управления TextArea (в зависимости от ViewBag.Categories), то все 10 TextArea будут иметь те же свойства ID и имени. Я помню, что подобная ситуация создавала некоторые проблемы на уровне javascript для меня в прошлом, это было не для TineMCE, а по-прежнему стоит попробовать.

Попробуйте указать уникальный идентификатор и/или свойства имени для каждого элемента управления TextArea и посмотреть, что произойдет!

+0

WOW tank man this fixed это для меня! Единственное, что я изменил, это идентификатор, потому что я не был уверен, что вы можете изменить имя И id, dosen't MVC потеряет связь между полями и модельными переменными? – Kladfizk

+0

Это замечательно знать ... нет, на самом деле MVC ожидает, что имя и свойства идентификатора будут уникальными для правильной привязки между элементами управления и свойствами модели, особенно когда вы используете массив ... – Nirman

+0

Ох, хорошо, спасибо за ответ и второй ответ :) – Kladfizk

0

Вы можете попробовать

tinymce.init({ 
mode : "textareas", 
}); 

Update:

Это было для TinyMCE 3.

Вы добавили больше возможностей для своей функции init или это так? Если это так, вы не должны добавлять запятую к последней опции.

$(document).ready(function() { 
     tinymce.init({ 
      selector: "textarea", 
     }); 
    }); 

должен быть

$(document).ready(function() { 
      tinymce.init({ 
       selector: "textarea" 
      }); 
     }); 
+0

Только первый редактор получает остальное то же самое Я видел это в документации для tinyMCE 3x, но не для дозы tinyMCE4x, которая все еще применяется, и где вы можете прочитать об этом? Im so lost на веб-сайте не может найти то, что им искать там вообще – Kladfizk

+0

Я обновил свой ответ – UmurAlpay

+0

Спасибо, но результаты все те же, я использую tinyMCE4, если это для любой помощи – Kladfizk

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