0

我想以编程方式调用 popupcontrolextender 的弹出窗口。这可能吗?

4

1 回答 1

4

您可以通过指定 aBehaviorID并使用该$find()函数来获取弹出窗口的客户端对象的句柄。这是一个弹出窗口的小工作(IE7)代码片段,当光标悬停在文本框上时显示,当光标移出文本框时消失。

<asp:TextBox ID="textbox" runat="server"
    onmouseover="$find('mybehavior').showPopup();"
    onmouseout="$find('mybehavior').hidePopup();" />
<asp:Panel ID="panel" runat="server">
    Hello, World!
</asp:Panel>
<ajax:PopupControlExtender ID="popup" runat="server"
    TargetControlID="textbox"
    BehaviorID="mybehavior"
    PopupControlID="panel"
    Position="Bottom" />

更新:

从服务器端脚本显示弹出窗口需要在 JavaScript 生命周期中的适当位置注册一些 JavaScript。客户端脚本块似乎为时过早,因为行为可能尚未初始化。下面的代码片段注册了一个启动脚本,该脚本又注册了一个函数以在客户端加载事件上打开弹出窗口。

var script = @"Sys.Application.add_load(function() { $find('mybehavior').showPopup(); });";
ScriptManager.RegisterStartupScript(this, GetType(), "ShowPopup", script, true);
于 2010-09-13T13:15:27.143 回答