2015-03-23 21 views
5

geçmek olsun:Onay Kutusu sütun, değerleri seçilen ve bir sütun şablon var kontrolöre

columns.Template(@<text></text>).ClientTemplate("<input type='checkbox' class='checkbox'/>").Title("<input type='checkbox'/>").Width(10).Title("Izbor").HtmlAttributes(new { @onclick = "click", style = "align:center;float:none;text-align:center; font-size:12px; vertical-align: middle;" }).HeaderHtmlAttributes(new { style = "overflow: visible; white-space: normal; text-align:center; font-size:12px; font-weight: bold;" }); 

Bu kod ile satırları seçin:

function onDataBound(e) { 
    $(".checkbox").bind("change", function(e) { 
     $(e.target).closest("tr").toggleClass("k-state-selected"); 
    }) 
} 

nasıl (örneğin belirli bir sütun seçebilirsiniz. Ids) ızgaradan ve kontrolöre iletir?

cevap

9

Tıklama olay sırasında onları izlemek ya da sadece bir olay tetiklenir tüm bunları toplayabilir ya

dataBound: function(e) { 
     $(".checkbox").bind("change", function(e) { 
     var grid = $("#grid").data("kendoGrid"); 
     var row = $(e.target).closest("tr"); 
     row.toggleClass("k-state-selected"); 
     var data = grid.dataItem(row); 
     alert(data.ProductID); 
     }); 
    } 

seçilen id yılların bir listesini almak için olay işleyicinizde sizin ızgarada destek verilerine erişebilir , Örneğin.

$("#actionButton").click(function(){ 
     var idsToSend = []; 
     var grid = $("#grid").data("kendoGrid") 
     var ds = grid.dataSource.view(); 

     for (var i = 0; i < ds.length; i++) { 
     var row = grid.table.find("tr[data-uid='" + ds[i].uid + "']"); 
     var checkbox = $(row).find(".checkbox"); 
     if (checkbox.is(":checked")) { 
      idsToSend.push(ds[i].ProductID); 
     } 
     } 

     alert(idsToSend); 

     //this obviously won't work , but just to illustrate the point.   
     $.post("/whatever", {ids: idsToSend}); 
    }); 

düzenleme: demo

+0

teşekkürler! İşe yarıyor! Tüm seçili satırları bir diziye nasıl ekleyebilirim ve tüm seçili kimlikleri denetleyiciye nasıl geçirebilirim? – lazerbrain

+0

Demo ve örneği, bunun olası bir yaklaşımıyla güncelledi. – Joe

+0

Teşekkürler! Tam olarak aradığım şey bu! :) – lazerbrain