0

我有一个 kendoListView,它绑定到具有多个字段的对象列表。

<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 和年龄(该绑定的所有属性目的)。

这是如何实现的?是否可以将对象绑定到 Kendo 列表视图中的项目?

4

1 回答 1

1

使用 ListView 的方法并传递与 item 对应dataItem的父元素。div

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

listViewItem将是一个Kendo UI 模型对象。

于 2016-11-27T12:03:57.757 回答