.net 带有colorbox的usercontrol未触发事件

.net 带有colorbox的usercontrol未触发事件,.net,jquery,user-controls,colorbox,.net,Jquery,User Controls,Colorbox,我有一个颜色框,当点击链接时显示一个隐藏的div。在colorbox中显示的div中有一个usercontrol。它基本上是一个订阅时事通讯的表单,将它们添加到我们的客户数据库中。出于某种原因,提交表单的按钮在colorbox中不起作用,但如果我将其移到隐藏分区之外,它就会起作用。这是我以前遇到的一个问题,通过在隐藏分区中创建一个iframe到一个带有usercontrol的空白页来解决,但我确信一定有一个更简单的解决方案 标记: <div style='display:none'>

我有一个颜色框,当点击链接时显示一个隐藏的div。在colorbox中显示的div中有一个usercontrol。它基本上是一个订阅时事通讯的表单,将它们添加到我们的客户数据库中。出于某种原因,提交表单的按钮在colorbox中不起作用,但如果我将其移到隐藏分区之外,它就会起作用。这是我以前遇到的一个问题,通过在隐藏分区中创建一个iframe到一个带有usercontrol的空白页来解决,但我确信一定有一个更简单的解决方案

标记

<div style='display:none'> 
    <div id='SignUpForm' style='padding:10px; background:#fff;'>
        <umbraco:Macro Alias="SignUpUserControl" runat="server"></umbraco:Macro>
    </div> 
</div>
$(document).ready(function () {
    $(".openSignUpForm").colorbox({
        width  : "50%",
        inline : true,
        href   : "#SignUpForm"
    });
});

顺便说一句,我使用的是umbraco cms,宏是对usercontrol的引用。但是如果我以传统的方式将usercontrol添加到页面中,我仍然会遇到同样的问题。

考虑到这是多久以前的事,我想你可能已经离开了,我不知道你是否已经设法解决了这个问题

但对于其他有此问题的人,我建议阅读本页:

如果你滚动到底部,你会看到所有没有帐号的答案

编辑:08/06/2011

实际上刚刚注意到直接链接到上面的页面不起作用

以下是我在该网站上提到的帖子: " 让我们了解大多数jquery覆盖插件是如何工作的: 您的页面结构如下所示:

--正文>--

--表格>--

--您的页面内容--

--要在覆盖中显示的div(colorbox div),通常使用display:none将其隐藏--

--/表格>--

--/正文>--

在运行时,当显示覆盖时,结构将更改为:

--正文>--

--表格>--

--您的页面内容--

--/表格>--

--div>(这是覆盖包装器) --要在覆盖中显示的div(colorbox div),通常使用display:none将其隐藏--

--/div>--

--/正文>--

请注意,您的div已移出标记。这就是事件不会触发的方式

解决办法是:

在jquery.colorbox.js文件中,搜索以下行: $('body').prepend($overlay,$box.append($wrap,$loadingBay))

替换为以下行: $('form').prepend($overlay,$box.append($wrap,$loadingBay))

一切都应该开始运转良好。”


我希望这有帮助

谢谢你的回复。最后,我自己从头开始编写了配色箱代码。真的不难!只有一个绝对位置div,它位于所有其他无显示的对象的顶部,开始时只有一条动画线条,如$(“#mydiv”).fadeIn();或美元(“#mydiv”).show()

stackoverflow删除了my html代码,再次显示: