usercontrol与colorbox不触发事件

时间:2010-10-13 10:34:06

标签: .net jquery user-controls colorbox

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

加价

<div style='display:none'> 
    <div id='SignUpForm' style='padding:10px; background:#fff;'>
        <umbraco:Macro Alias="SignUpUserControl" runat="server"></umbraco:Macro>
    </div> 
</div>

JavaScript

$(document).ready(function () {
    $(".openSignUpForm").colorbox({
        width  : "50%",
        inline : true,
        href   : "#SignUpForm"
    });
});

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

2 个答案:

答案 0 :(得分:1)

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

但对于有此问题的其他人,我建议您阅读此页面: http://www.experts-exchange.com/Programming/Languages/.NET/ASP.NET/Q_26778740.html

如果您滚动到底部,您将看到所有已发布但没有帐户的答案。

编辑:08/06/2011

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

这是我在该网站上提到的帖子: “ 让我们了解大多数jquery覆盖插件的工作原理: 你的页面结构是这样的:

- 体&GT; -

- 形式&GT; -

- 您的网页内容 -

- div显示在overlay(colorbox div)中,通常使用display:none隐藏,在这种情况下为

- /形式&GT; -

- /体&GT; -

在运行期间,在显示叠加层时,结构更改为:

- 体&GT; -

- 形式&GT; -

- 您的网页内容 -

- /形式&GT; -

- DIV&GT; (这是叠加包装)     --div显示在overlay(colorbox div)中,它通常使用display:none隐藏,如本例所示 -

- / DIV&GT; -

- /体&GT; -

请注意,您的div已移出标记。这就是事件没有发生的方式。

解决方案是:

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

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

一切都应该开始正常工作。“

我希望有所帮助!

答案 1 :(得分:1)

感谢您的回复。我最后自己从头开始编写彩盒代码。真的很难!只是一个绝对的位置,其他一切都没有显示,只有像$(“#mydiv”)这样的动画线.fadeIn();或$(“#mydiv”)。show();

相关问题