如何取消选择kendo listview中的项目

时间:2014-11-02 01:48:17

标签: kendo-ui

我想在用户选择项目后取消选择。 基本上我在一个窗口中有listview,一旦用户选择它,我想得到用户选择的项目然后用该项目的数据做一些事情,然后取消选择listview中的所有内容,因为下次窗口显示时我想要它成为一个新的清单(未选择的项目) 这是我到目前为止所拥有的

function listViewchanged(e) {

    var ds = $("#listView").data("kendoListView");
    var index = ds.select().index();
    var dataItem = ds.dataSource.view()[index];

    closeWindow();
}

1 个答案:

答案 0 :(得分:3)

.clearSelecton()是你需要的方法,但代码如下:

$("#listView").kendoListView({
    change: function(e){
         e.sender.clearSelection();
    }
});

会产生无限循环,因为.clearSelection()会触发'chage'事件。你可以做的是清楚选择window.open()事件或只是通过JS隐藏选定的项目:

function listViewchanged(e) {
    var ds = $("#listView").data("kendoListView");
    var index = ds.select().index();
    var dataItem = ds.dataSource.view()[index];
    ds.element.find('.k-state-selected').removeClass('k-state-selected');
    closeWindow();
}

还有一个想法。如果在触发事件的情况下使用widget我建议在事件参数中使用.sender属性。所以最终的代码是:

function listViewchanged(e) {
    var index = e.sender.select().index();
    var dataItem = e.sender.dataSource.view()[index];
    e.sender.element.find('.k-state-selected').removeClass('k-state-selected');
    closeWindow();
}