Kendo ui 如何使panelbar中的点击导航有条件

Kendo ui 如何使panelbar中的点击导航有条件,kendo-ui,kendo-panelbar,Kendo Ui,Kendo Panelbar,我有一个基于远程数据源的面板条,一切正常。 提要中的一个属性与屏幕上的一个表单字段相结合,将确定用户是否可以单击panelbar中的子项并导航到url,或者获得警告对话框,导航失败 我使用以下技术捕获提要中给定的json属性,并将其与面板中的每个项目关联: $("#panelbar").kendoPanelBar({ dataSource: haRepList, template: "<span class=''repType'' data-url=

我有一个基于远程数据源的面板条,一切正常。 提要中的一个属性与屏幕上的一个表单字段相结合,将确定用户是否可以单击panelbar中的子项并导航到url,或者获得警告对话框,导航失败

我使用以下技术捕获提要中给定的json属性,并将其与面板中的每个项目关联:

    $("#panelbar").kendoPanelBar({
        dataSource: haRepList,
        template: "<span class=''repType'' data-url=''#= item.type #''>#= item.name #</span>",
        select: function(panel){
           var classId =  $(panel.item).find(".repType").data(''url'');
           if (classId !== ''undefined'') {
           alert(classId);
           }
        },
        dataTextField: ["name", "name"]
    });
$(“#panelbar”).kendoPanelBar({
数据来源:haRepList,
模板:“#=item.name#”,
选择:功能(面板){
var classId=$(panel.item).find(“.repType”).data(“.url”);
如果(classId!=“未定义”){
警报(classId);
}
},
dataTextField:[“名称”,“名称”]
});

因此,当我单击给定的项时,会收到一个警报,告诉我type属性是什么。现在,我需要根据此值和屏幕上的另一个字段告诉面板“不允许点击url工作”。

您可以尝试
preventDefault
stopPropagation
或干脆
返回false

$("#panelbar").kendoPanelBar({
    dataSource: haRepList,
    template: "<span class=''repType'' data-url=''#= item.type #''>#= item.name #</span>",
    select: function(panel){
       var classId =  $(panel.item).find(".repType").data(''url'');
       if (classId !== ''undefined'') {
           panel.preventDefault();
       }
    },
    dataTextField: ["name", "name"]
});
$(“#panelbar”).kendoPanelBar({
数据来源:haRepList,
模板:“#=item.name#”,
选择:功能(面板){
var classId=$(panel.item).find(“.repType”).data(“.url”);
如果(classId!=“未定义”){
panel.preventDefault();
}
},
dataTextField:[“名称”,“名称”]
});

这里有一个链接指向第二个面板被有条件禁用的工作。希望这有帮助。

完美:非常感谢