我正在使用C#日历应用程序创建ASP.NET。当用户单击一天时,我正在使用jQuery Popup Overlay,它将允许用户添加“约会”并单击按钮来处理后面代码中的输入信息。
弹出窗口叠加层基本上隐藏了HTML元素,并在单击另一个元素时使其可见(通过上面的链接,显示了很多示例)。
编码:
<asp:Button ID="ButtonA" runat="server" OnClick="Button_Click" Text="Button A" />
<asp:Label ID="Label" runat="server" Text="Foo"></asp:Label>
<div id='slide'>
<div id="content">
Content of the 'popup panel'
<asp:Button ID="ButtonB" runat="server" OnClick="Button_Click" Text="Button B" />
</div>
</div>
代码背后:
public void Button_Click(Object sender, EventArgs e)
{
Label.Text = "Bar";
}
Javascript:
$(document).ready(function () {
$('#slide').popup({
//options
});
});
我尝试将AutoPostBack =“true”参数添加到按钮,但没有区别(无论是否正确,应该是自动的)。我还尝试将runat =“server”参数添加到div元素,但这使问题变得更糟。
恐怕我对问题的本质了解不够,无法提供比这更多的信息-对不起!
最佳答案
jQuery插件很可能覆盖了按钮的行为。您可以使用提供的URL中的onclose回调来实现如下功能:
function() {
__doPostBack("ctl00$MainContent$ButtonB","");
}
失败的话,您可能在弹出div之外有另一个按钮,您可以在弹出窗口的
click()
事件期间手动执行onclose
事件,但这似乎有点hack!