如果可以使用jquery将kendo ui grid的可选属性设置为false,请告诉我。
我有两个网格第一个网格可选择当我对第一个网格进行更改时,第二个网格可选功能应相应更改 假设网格行中有两个类别,其中一行是admin,另一行是普通用户,那么如果是普通用户,第二个网格可选择应该通过在网格外使用jquery来实现......
`jQuery("#usersMatterList").kendoGrid({
dataSource: usersMatterDataSource,
autobind:false,
filterable: true,
sortable: true,
pageable: false,
resizable: true,
selectable : true,
scrollable: true,
change : function(e){
var selectedItem = this.dataItem(this.select());
if(selectedItem.id != null){
globalCaseId = selectedItem.id;
updateAllPermissionComboboxes(globalCaseId);
}
},
columns: [
{
name : 'id',
field : 'id',
hidden : true
},
{
name : 'name',
field : 'name',
align: "left"
},
{
name : 'deleteIcon',
field : 'deleteIcon',
align: 'left',
title: 'Delete',
template: function (cellvalue) {
return "<span class='deleteIconClass'><img border='0' src='${resource(dir: 'images', file: 'close_icon9x8.png')}' alt='Delete' title='Delete' style='cursor: pointer'/></span>";
},
width:25,
hidden: true
},
],
dataBound: function(e) {
jQuery(".deleteIconClass").click(function(evt){
e.preventDefault();
deleteAskKendoWindow.data("kendoWindow").center().open();
});
//console.log(this.selectable);
if(this.options.selectable){
this.select(e.sender.tbody.find("tr:first"));
}
}
//filterMenuInit: onFilterMenuInit
}).data("kendoGrid");`
我试图以下面显示的方式进行更改
if(user.companyAdmin || user.siteAdmin){
//jQuery("#usersMatterList").find('table').removeClass("k-selectable");
//jQuery("#usersMatterList").data("kendoGrid").options.selectable = false;
//
//jQuery("#usersMatterList").removeClass('k-selectable');
//jQuery("#usersMatterList").data("kendoGrid").dataSource.read();
//ugrid.refresh();
//jQuery("#usersMatterList").data("kendoGrid").refresh();
}else if(!user.companyAdmin || !user.siteAdmin) {
//jQuery("#usersMatterList").find('table').addClass("k-selectable");
//jQuery("#usersMatterList").addClass('k-selectable');
//jQuery("#usersMatterList").data("kendoGrid").options.selectable = true;
//grid.refresh();
//jQuery("#usersMatterList").data("kendoGrid").refresh();
}
答案 0 :(得分:4)
您可以使用网格的setOptions方法
http://docs.telerik.com/kendo-ui/api/javascript/ui/grid#methods-setOptions
var grid = $("#usersMatterList").data("kendoGrid");
grid.setOptions({
selectable: false
});
<强> DEMO 强>
答案 1 :(得分:0)
我尝试使用jQuery-ui
禁用我实际上删除了kendo ui网格添加k-selectable
的类if(user.companyAdmin == 1 || user.siteAdmin){
jQuery("#usersMatterList").removeClass("k-selectable");
jQuery("#usersMatterList").find("tr").removeClass("k-state-selected");
//jQuery("#usersMatterList").data("kendoGrid").dataSource.read();
//jQuery("#usersMatterList").data("kendoGrid").options.selectable = false;
}
else
{
jQuery("#usersMatterList").addClass("k-selectable");
//jQuery("#usersMatterList").data("kendoGrid").options.selectable = true;
}
它的工作现在感谢所有访客。如果有任何其他解决方案可以提供给我。谢谢。