2016-05-19 8 views
1

剣道グリッドの各行をループし、特定の行のみのチェックボックスをオンにしたいと思います。これまでに試したことがあります。剣道グリッドの特定のチェックボックスをチェック

function LoadControllerGrid(list) { 

     $("#controllerGrid1").kendoGrid({ 
      data Source: { 
       type: "json", 
       // contentType: "application/json; charset=utf-8", 
       transport: { 
        read: { 
         url: "@Html.Raw(Url.Action("GetControllerList", "Account"))", 
         type: "POST", 
         dataType: "json" 
        }, 

       }, 
       schema: { 
        model: { 
         id: "Id", 
         fields: { 
          'Id': { type: "string" }, 
          'Name': { type: "string" }, 
          'Description': { type: "string" }, 
          'URL': { type: "string" }, 
         }, 

        }, 
        data: 'data', 
        total: 'TotalCount' 
       }, 
       complete: function (jqXHR, textStatus) { 
        //  HidePageLoader(); 

       }, 
       pageSize: 5, 
       serverPaging: true, 
       serverSorting: true, 
       serverFiltering: true, 
       columnMenu: true 
      }, 
      height: 300, 
      groupable: false, 
      sortable: true, 
      filterable: true, 
      pageable: { 
       refresh: true, 
       pageSizes: 5000 
      }, 
      columns: [{ template: '<input type="checkbox" id="#=Id#" class="gridCK" />', width: "35px" }, 
         { field: "Description", title: "Actions" }, ] 



     }); 

     var df = list; 
     var grid = $("#controllerGrid1").data("kendoGrid"); 
     grid.tbody.find("input").closest("tr").each(function (index, row) { 

      var dataItem = grid.dataItem(row); 
      for (var i = 0; i < df.length; i++) 
      { 

       if (df[i] == dataItem.Id) { 

        $("#controllerGrid1 tbody").find("tr[data-uid=" + dataItem.Id + "]").attr("checked"); 


     }); 


    } 

私は何を間違って説明しましたか?これを行うための代替方法があるかどうかを提案します。事前に感謝します

答えて

1

解決策が見つかりました。

var selected = $("#controllerGrid1 tbody").find("tr[data-uid=" + dataItem.uid + "]"); 
         selected 
         .find("td:first input") 
         .attr("checked", true); 

それは、コードの上に追加する代わりに、次の後に私の作品、

$("#controllerGrid1 tbody").find("tr[data-uid=" + dataItem.Id + "]").attr("checked"); 
+0

あなたの選択を簡素化: '$( "#controllerGrid1のTBODY TRの[データ-UID =" + dataItem.uid +「] td:最初の入力 ")。attr(" checked "、true);'。いいえ、多くの 'find's ...必要はありません – DontVoteMeDown

関連する問題