我正在使用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!

07-24 09:45
查看更多