2016-11-26 11 views
0

私は、いくつかのフィールドを持つオブジェクトのリストにバインドされたkendoListViewを持っています。剣道のアイテムにバインドされたオブジェクトを取得するListView

<div id="lstAllItems"></div> 

<script type="text/x-kendo-tmpl" id="itemTemplate">  
    <div> 
     <label><input type="checkbox"/>#: Name#</label> 
    </div> 
</script> 

<script> 

    var itemsList = [{Name : "ABC", Age : 23, EmpID : 1}, 
     {Name : "PQR", Age : 25, EmpID : 2},  
     {Name : "XYZ", Age : 23, EmpID : 3} 
    ]; 

    var _dataSource = new kendo.data.DataSource({ 
     data: itemsList 
    }); 

    $("#lstAllItems").kendoListView({ 
     dataSource: _dataSource, 
     template: kendo.template($("#itemTemplate").html()) 
    }); 

</script> 

ここで、そのリストのすべてのチェック項目を取得したいとします。私は、次のコードを使用して、そうすることができました:

$("#lstAllItems input").each(function() { 
    if (this.checked) 
    { 

    } 
}); 

今の問題は、私は、入力チェックをこれにバインドされ、オブジェクト全体を取得したい、つまり、私は、この入力にバインドされたオブジェクト全体を取得する方法を見つけることができないということです名前だけでなく、EmpIDと年齢(バインドされたオブジェクトのすべてのプロパティ)も含みます。

これはどのように達成できますか?剣道リストビューのアイテムにバインドされたオブジェクトを取得することは可能ですか?

答えて

1

ListViewのdataItemメソッドを使用し、アイテムに対応する親div要素を渡します。

$("#lstAllItems input").each(function() { 
    if (this.checked) 
    { 
     var listView = $("#lstAllItems").data("kendoListView"); 
     var listViewItem = listView.dataItem($(this).closest("div")); 
    } 
}); 

listViewItemKendo UI Model対象となります。

+1

完璧な回答! これはまさに私が探していたものです...ありがとうございました! – user2091061

関連する問題