向Telerik RadContextMenu添加项目,显示透明背景

时间:2011-12-16 12:07:52

标签: javascript asp.net telerik rad-controls

我的asp.net网页上有一个RadContextMenu。此菜单包含一些静态项目。

我从javascript中添加了更多选项,就是这样。

从javascript右侧添加项目后,上下文菜单变得透明。

更多详情:

以下是我在现有rad上下文菜单中添加少量项目的javascript代码,即RadMenu1。 已经有很少的项目,我在javascript中动态添加更多项目

function ContextMenuOpen(sender, args) 
{
    var menu = $find("m_c_RadMenu1");
    if (IsMobileBrowser() == false) 
    {
        var evt = args.get_domEvent();
    }
    menu.trackChanges();
    var items = menu._getAllItems()
    menu.get_items().clear();

    //menu.commitChanges();
    AddItem("Visit & View Details", "a");

    if (selectedRow.findElement("lblTask") != null) {
        var tasklist = selectedRow.findElement("lblTask").defaultValue;
        var taskArray = tasklist.split(',');

        for (i = 0; i < taskArray.length; i++) {
            if (typeof (taskArray[i].split('~')[1]) == 'undefined') break;
            AddItem("Perform " + taskArray[i].split('~')[1], taskArray[i].split('~')[0]);
        }
        //rb.AddItem(selectedRow.findElement("lblTask").innerText,4)
    }
    AddItem("Log an Incident", "b");
    if (rb.isLocationSelected == false) {

    AddItem("Log a Discrepancy", "c");
}


function AddItem(text, value) {
    var menu = rb.GetMenu();
    var item = rb.GetContextMenuItem(text);
    if (item != null) return false;
    var menuItem = new Telerik.Web.UI.RadMenuItem();
    menuItem.set_text(text);
    menuItem.set_value(value)
    menu.trackChanges();
    menu.get_items().add(menuItem);
    menu.commitChanges();
    return true;
}

一切顺利,但新添加的上下文菜单在右侧显示透明背景,我发现它只在文本存在的区域填充背景,在右侧的空白区域它是透明的(参见附图)

see the transparent background, right side of the items

有人知道如何删除这个透明的背景吗?

0 个答案:

没有答案