我正在使用Kendo UI ListView,使用MVVM绑定。 listview的定义如下:
NameError: name 'request' is not defined
listview的行是绑定到以下视图模型的<tbody id="listview" data-role="listview"
data-template="ListItemTemplate" data-selectable= "true"
data-bind="source:categoriesDataSource, events:{change:onListChange}">
行:
<tr>
我正在直接转换JSON对象数组;这很好。但是,我也定义了一个更改事件并且正确执行,但我不知道如何获取当前所选记录的值。有没有办法从底层数据源获取?我在视图模型中尝试了以下事件处理程序,代码运行但是值不是所选记录:
var viewModel = kendo.observable({
categoriesDataSource: new kendo.data.DataSource({
data: @(Html.Raw(JsonConvert.SerializeObject(Model.ItemCategories)))
})
});
如何获取当前所选记录的值?
答案 0 :(得分:1)
看看我为你做的这个
onListChange: function(e) {
var index = e.sender.select().index();
var item = e.sender.dataSource.view()[index];
console.log(item); // item here is the currently selected list item (ObservableObject))
}
答案 1 :(得分:0)
有dataItem方法来获取为kendo小部件指定的数据项。 http://docs.telerik.com/kendo-ui/api/javascript/ui/listview#methods-dataItem
String.Index.init(utf8Index: UTF8Index##UTF8Index#>, within: <#T##String#>)