div中的.NET按钮,其中style =“display:none”未触发

时间:2011-01-24 14:34:27

标签: c# .net css

我在.Net中设置了一个非常简单的网页表单,我正在利用jQuery来实现某些功能。我正在使用DOMWindow部分作为表示层的一部分。

div中有一个登录表单,设置为display:none。当用户单击页面上的按钮时,它将显示登录表单。但是,当display设置为none时,登录表单的.Net按钮不会触发它的事件。如果我把它拿出来,那就好了。我也尝试过使用visibility属性,但没有运气。

div代码是:

<div id="Login" style="display:none;">

启动代码为:

click <a href="javascript:LaunchLoginWindow();" style="color:#000000;">here</a> to login.<br />

jQuery代码是:

function LaunchLoginWindow() {
    $(document).append("#Login");
    $.openDOMWindow({
        loader: 1,
        loaderImagePath: 'animationProcessing.gif',
        loaderHeight: 7,
        loaderWidth: 8,
        windowSourceID: '#Login'
    });
}

任何人都可以提供任何帮助或解释。

我注意到我在Login div中定义了一个客户端函数。我删除了这个,以便将其作为一个可能的问题消除。

2 个答案:

答案 0 :(得分:2)

我可以在你的代码中看到你正在附加div #Login但是没有将它的样式属性设置为正常,就像块一样。将它设置回阻止,我相信它会起作用

尝试添加如下内容:

$(document).append("#Login").show();

答案 1 :(得分:1)

好吧,在使用firebug玩这个之后,我发现了一个问题:当jQuery插件DOMWindow创建它的显示层时,它会附加到DOM的HTML节点,它将控件放在asp.net表单之外标签。因此,.Net无法识别通过DOMWindow与其关联的按钮和操作。所以我编辑了DOMWindow源文件以附加到DOM表单节点而不是html节点。

缺点是源已经定制,必须彻底进行QA,特别是如果进行任何进一步的更改。但我希望通过在文件中发表评论来有效地管理这个问题。

希望这可以帮助其他任何人解决这个问题。

PBR