1

asp.net Web ページに RadContextMenu があります。このメニューにはいくつかの静的項目があります。

javascript からさらにいくつかのオプションを追加しています。

javascript から項目を追加すると、コンテキスト メニューの右側が透明になります。

詳細:

以下は、既存の rad コンテキスト メニュー、つまり RadMenu1 にいくつかの項目を追加する JavaScript コードです。すでにいくつかのアイテムがあり、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;
}

すべてうまくいっていますが、新しく追加されたコンテキスト メニューの右側に透明な背景が表示されます。テキストが存在する領域でのみ背景が塗りつぶされ、右側の空の領域は透明であることがわかりました (添付の画像を参照)。

項目の右側の透明な背景を参照してください

この透明な背景を削除する方法を知っている人はいますか?

4

0 に答える 0