我有一个自定义控件,它已在隐藏 div 的主页中注册。在页面加载时,我显示了一个模式窗口(fancybox 2),其中包含隐藏 div 的内容。
我的问题是这个控件有一个按钮,它不会从花式框中触发。
我试过这个Fancybox - ASP.NET 按钮不起作用,但没有任何改变。
有谁知道如何解决这一问题?最好是在不修改fancybox.js 的情况下进行修复。
控件所在的代码
<a href="#inline" style="display: none" id="trigerButton"></a>
<div id="inline" style="display: none; width: 500px;">
<asp:PlaceHolder runat="server" ID="PhCtrl"></asp:PlaceHolder>
</div>
来自codeBehind
var ctrlName = LoadControl("~/Path/control.ascx");
ctrlName.ID="ctrlID";
PhCtrl.Controls.Add(ctrlName);
var sb = new StringBuilder();
sb.Append("$(document).ready(function() {");
sb.Append("$('#trigerButton').fancybox({modal:true}).trigger('click');");
sb.Append("$('#clickNo').click(function(){$.fancybox.close(true)});");
sb.Append("});");
ClientScript.RegisterStartupScript(typeof(T), "_script", sb.ToString(), true);
自定义控件
它有一个按钮,这个按钮不会触发
<asp:Button runat="server" ID="Button1" Text="Upgrade" OnClick="Button1_click" />
protected void Button1_click(object s,EventArgs e)
{
//Do something
}
我会很感激任何建议
谢谢
解决方案
我没有编辑fancybox.js就找不到解决方案,尽管我替换了每个
appendTo('body')
和
appendTo('form:first')