2013-01-14 42 views
0

使用Telerik's的ASP.NET AJAX控件,在菜單上有一個名爲findItemByValue的方法,該方法可以通過其值查找項目。RadMenu按客戶價值遞歸查找項目

但它只顯示在根級別項目內。

在客戶端API中是否有一種方法可以按值查找項目,但是遞歸地,無需我手動循環遍歷每個項目?

回答

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()得到的DOM元素爲RadMenu,然後用getElementById如果你有一個想法是什麼會該元素的樣子。 (但我寧願用第一個解決方案..

+0

get_allItems實際上工作得很好。謝謝 –