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;
}
すべてうまくいっていますが、新しく追加されたコンテキスト メニューの右側に透明な背景が表示されます。テキストが存在する領域でのみ背景が塗りつぶされ、右側の空の領域は透明であることがわかりました (添付の画像を参照)。
この透明な背景を削除する方法を知っている人はいますか?