The kendo listview documentation says that you can pass in a selector or an array. An array of what?
I have a complex kendo grid that is using inline custom editors based on information in the row. This all works great, EXCEPT for the listview I'm adding.
Given something like this (I'm using underscore js by the way), how do I select the list items using javascript?
I have a complex kendo grid that is using inline custom editors based on information in the row. This all works great, EXCEPT for the listview I'm adding.
Given something like this (I'm using underscore js by the way), how do I select the list items using javascript?
function
createListViewEditor(container, options) {
var
list = _.find(_viewModel.model.LookupListCollection,
function
(x) {
return
(x.Id == options.model.StagingControlStageAttributeLookupCollectionId);
});
var
listItems = [];
_.forEach(list.LookupValues,
function
(x) {
listItems.push({ text: x.CustomName, value: x.Id });
});
var
lvSource =
new
kendo.data.DataSource({
data: listItems
});
var
listView = $(
'<div />'
)
.appendTo(container)
.kendoListView({
dataSource: lvSource,
selectable:
"multiple"
,
template: kendo.template($(
'#multiselecttemplate'
).html())
}).data(
"kendoListView"
);
var
indices = multiListSelectionHelper(listView.dataSource.data(), options.model.AttributeFieldValue.split(
','
));
listView.select(indices);
listView.bind(
"change"
,
function
(e) {
var
data = e.sender.dataSource.view(),
selected = $.map(e.sender.select(),
function
(item) {
return
data[$(item).index()].value;
});
options.model.AttributeFieldValue = selected.join();
});
}
function
multiListSelectionHelper(options, current) {
var
items = [];
_.forEach(options,
function
(x) {
_.forEach(current,
function
(y) {
if
(x.value == parseInt(y)) {
items.push(x);
}
});
});
return
items;
}