2016-06-06 2 views
0

Я просто хочу проверить все дочерние checkbox, когда родитель проверяет и снимает галочку, когда родитель отключен.CheckBox проверить все дочерние checkBox на check

THX

<div class="modal-body"> 

      @for (int i = 0; i < Model.Count; i++) 
      { 
       @Html.HiddenFor(m => Model[i].Id) 
       <div id="@Model[i].Name" class="row" style="width:300px;"> 
        <div> 
         <span data-toggle="collapse" class="glyphicon glyphicon-chevron-down" data-target="#@Model[i].Id"> </span> 
         @Html.Label(Model[i].Name + "("+ (Model[i].LicensesTotal - Model[i].LicensesUsed).ToString()+"/" + Model[i].LicensesTotal.ToString())) 


         @Html.CheckBoxFor(x => Model[i].Assigned, new { @class = "pull-right", @id = @Model[i].Name.ToString() }) 
        </div> 
        <div id="@Model[i].Id" class="collapse"> 


         @for (int i2 = 0; i2 < Model[i].Plans.Count; i2++) 
         { 
          <div> 
           <div> 
            @Html.Label(Model[i].Plans[i2].Name) 
            @Html.CheckBoxFor(x=> Model[i].Plans[i2].Assigned, new { @class = "pull-right" }) 
           </div> 
          </div> 
         } 
        </div> 
        <hr/> 
       </div> 

      } 

</div> 
+0

Написать HTML результирующего элемент вместо бритвы. – Mohammad

+0

Его динамически генерируется, поэтому вы не можете предположить, что результат html будет всегда одним и тем же ... – FrankSharp

ответ

1

Добавить специальный класс для родительского флажком, как это,

@Html.CheckBoxFor(x => Model[i].Assigned, new { @class = "pull-right parent", @id = @Model[i].Name.ToString() }) 

Тогда ваш код будет,

$(".parent").change(function() { 
    $(this).closest(".row").find(".collapse :checkbox").prop("checked", this.checked); 
}); 
  • найти родительский DIV с класс row с использованием closest(".row")
  • Получить все галочки внутри коллапса сНа с помощью .find(".collapse :checkbox") (Найти будет искать для дочерних элементов)
+0

Идентификатор родителя является динамически сгенерированным Я не могу Жесткий код Это для каждого родителя ... – FrankSharp

+0

У меня есть этот $ (": checkbox"). (функция (e), чтобы обнаружить Id – FrankSharp

+0

@FrankSharp, затем добавьте специальный класс в родительский флажок. –