2010-09-13 61 views
0

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

+0

你是什么意思,“调用弹出”? – 2010-09-13 12:36:54

+0

抱歉,我不是母语为英语的人,这是我可以表达的最好的,我的意思是我需要从服务器端代码隐藏代码调用弹出窗口的打开,你知道这是可能吗? – Pablo 2010-09-13 14:44:27

回答

4

您可以通过指定BehaviorID并使用$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); 
+0

我需要从服务器端代码隐藏代码调用弹出窗口的打开,你知道这是可能的吗? – Pablo 2010-09-13 14:43:41

+0

@Pablo - 我添加了一些可用于显示弹出窗口的服务器端脚本示例。请检查一下。 – kbrimington 2010-09-13 15:07:50

相关问题