从iframe内的按钮打开菜单列表

时间:2014-01-22 11:35:18

标签: c# jquery asp.net css webforms

我有一个asp:按钮,我想打开一个菜单,我想根据菜单按钮左侧的框中的pageID加载自定义菜单。到目前为止,我一直在使用jQuery对话框对其进行测试,该对话框现在可以正常使用但没有所需的功能。

我想动态创建菜单,所以有用的是将菜单页加载到按钮左侧的框中的iframe。

这应该是这样的: enter image description here

这是我用来在对话框中打开菜单的代码,如果可以某种方式更改它只是加载一个非常好的按钮旁边的iframe:

    var $dial2 = ""
    function openmenu(title, width, height, menuID) {
        $dial2 = $('<div></div>')
                       .html('<iframe id="dial1" style="border: 0px; " src=/CustomControls/PageSubMenu.aspx?&menuID="' + menuID + '" width="100%" height="100%"></iframe>')
                       .dialog({
                           autoOpen: false,
                           modal: true,
                           height: height,
                           width: width,
                           title: title
                       });
        $dial2.dialog('open');
    }

1 个答案:

答案 0 :(得分:0)

最后,我使用上面显示的对话框实现了这一点,但使用了position属性将其连接到我的按钮边缘。我在对话框中添加了一个按钮来关闭它,并为菜单中显示的任何按钮添加了一个关闭事件。

function openmenu(width, height, menuID) {
    if ($dial2 == "") {
        $dial2 = $('<div></div>')
                       .html('<iframe id="dial2" style="border: 0px; " src=/CustomControls/PageSubMenu.aspx?&menuID="' + menuID + '" width="100%" height="100%"></iframe>')
                       .dialog({
                           autoOpen: false,
                           modal: false,
                           height: height,
                           width: width,
                           title: 'Menu',
                           draggable: false,
                           resizable: false,
                           position: {
                               my: 'top',
                               at: 'left-207',
                               of: $('#btnMenu')
                           },
                           dialogClass: "testdia"
                       });
        $dial2.dialog('open');

    }
    else {
        closemenu();
    }
    }