右键单击时如何关闭/删除菜单项或标签?

时间:2013-06-06 07:00:57

标签: c# javascript jquery asp.net

我正在使用多视图创建标签,我想要做的是在我右键单击时关闭其中一个菜单标签。

这些是aspx和代码背后的一部分:

ASPX页面:

<asp:Menu
    id="Menu1"
    Orientation="Horizontal"
    StaticMenuItemStyle-CssClass="tab"
    StaticSelectedStyle-CssClass="selectedTab"
    CssClass="tabs" width = "100%" 
    OnMenuItemClick="Menu1_MenuItemClick"                           
    Runat="server" style=" text-align:center;">
</asp:Menu>
<div id="divcont" runat="server" class="tabContents" style="height:100%; width:100%;" visible="false">
    <asp:MultiView
        id="MultiView1"
        ActiveViewIndex="0"
        Runat="server">
        <asp:View ID="v1" runat="server" >
        <iframe id="f1" runat="server" style="border: None; height: 100%; width: 100%;"></iframe>
        </asp:View>      
        <asp:View ID="v2" runat="server" >
        <iframe id="f2" runat="server" style="border: None; height: 100%; width: 100%;"></iframe>
        </asp:View>
        <asp:View ID="v3" runat="server" >
        <iframe id="f3" runat="server" style="border: None; height: 100%; width: 100%;"></iframe>
        </asp:View>
        <asp:View ID="v4" runat="server" >
        <iframe id="f4" runat="server" style="border: None; height: 100%; width: 100%;"></iframe>
        </asp:View>
        <asp:View ID="v5" runat="server" >
        <iframe id="f5" runat="server" style="border: None; height: 100%; width: 100%;"></iframe>
        </asp:View>
        <asp:View ID="v6" runat="server" >
        <iframe id="f6" runat="server" style="border: None; height: 100%; width: 100%;"></iframe>
        </asp:View>        
        <asp:View ID="v7" runat="server" >
        <iframe id="f7" runat="server" style="border: None; height: 100%; width: 100%;"></iframe>
        </asp:View>
        <asp:View ID="v8" runat="server" >
        <iframe id="f8" runat="server" style="border: None; height: 100%; width: 100%;"></iframe>
        </asp:View>
        <asp:View ID="v9" runat="server" >
        <iframe id="f9" runat="server" style="border: None; height: 100%; width: 100%;"></iframe>
        </asp:View>
        <asp:View ID="v10" runat="server" >
        <iframe id="f10" runat="server" style="border: None; height: 100%; width: 100%;"></iframe>
        </asp:View>
    </asp:MultiView>
</div>

代码背后:

(这是NodeChanged事件的一部分)

...
...
...
int TabCount = Convert.ToInt32(lblTabCounter.Text.ToString());
int TabIndex = Convert.ToInt32(lblTabCounterIndex.Text.ToString());

if(TabCount <= 10)
    {
        divcont.Visible = true;
        string tabName = getURLName(uRL);
        MenuItem myItem = new MenuItem(tabName, TabIndex.ToString());
        Menu1.Items.AddAt(TabIndex, myItem);
        f1.Attributes.Add("src", lblURL.Text.ToString());
        MultiView1.ActiveViewIndex = TabIndex;
        TabCount++;
        TabIndex++;
        lblTabCounter.Text = TabCount.ToString();
        lblTabCounterIndex.Text = TabIndex.ToString();
        tvPermissions.ExpandAll();

        int i = ctr;
    }

(这是针对MenuItemClick事件的)

protected void Menu1_MenuItemClick(object sender, MenuEventArgs e)
{
    int index = Int32.Parse(e.Item.Value);
    MultiView1.ActiveViewIndex = index; 
}

这是示例输出:

enter image description here

树视图位于橙色部分(左侧)。而蓝色的是位于项目中的目标网址。基于我提供的代码,它仅指出一个名为“f1”的帧作为示例,尽管其中有10个。当我右键单击它时,如何删除特定选项卡(比如“费用”标签)?

我希望在后面的代码中完成此操作。对于javascript / jquery解决方案,请提供其实现后面的代码或如何从代码后面调用/使用它。

请帮我解决这个问题。如需澄清,请发表评论。

谢谢!

1 个答案:

答案 0 :(得分:0)

我尝试了不同的方法。而不是右键单击我使用双击确认删除选项卡。

我还调整了用户定义的JS库来捕获双击并添加更多效果。

我也提到我已经有了我的JavaScript函数来处理这个问题我只是在寻找除JavaScript或JQuery之外的其他选择。但是我很惊讶我没有收到任何回复或评论。

感谢您阅读此帖。