RadMenu按客户端的值递归查找项目

时间:2013-01-14 21:26:11

标签: asp.net telerik asp.net-ajax

使用Telerik的ASP.NET AJAX控件,菜单上有一个名为findItemByValue的方法,可以按值找到项目。

但它只是显然在根级别项目中查找。

客户端API中是否有一个方法可以按值查找项目,但递归上没有我必须手动遍历每个项目?

1 个答案:

答案 0 :(得分:0)

没有。由于findItemByValue的设计方式,递归搜索没有RadMenu方法。

但是,您可以使用get_allItems()方法代替“手动循环浏览每个项目”。

function recursiveFindItemByValue(searchedValue)
{  
    var menu = $find("<%=RadMenu1.ClientID %>");  
    var menuItems = menu.get_allItems();

    for (var i=0; i< menuItems.length; i++)  
    {    
        if(menuItems[i].get_value()==searchedValue)
            return menuItems[i];
    }
} 

如果您确实不想使用循环,可以搜索使用get_contextMenuElement()获取RadMenu的DOM元素的方法,然后使用getElementById如果你知道元素的外观是什么。 (但我宁愿使用第一个解决方案..