鼠标移开时关闭AJAX Control Toolkit BallonPopupExtender

有人知道如何从客户端关闭Ballon Popup Extender吗? 一切都很好但是因为我设置了BPE来显示鼠标hover,所以我试过它没有任何关闭或隐藏鼠标的方法是非常不合理的:

function hideElement() { document.getElementById(ID).style.display = 'none'; } function hideControl() { document.getElementById('').style.visibility = "hidden"; return false; } 

我把上面的方法连接到一个div onmouseout,我可以隐藏页面上的任何控件而不是BPE,我试图对BPE所针对的面板做同样的事情,但没有发生任何事情。

有没有我错过的或BPE就是这样?

这实际上并不太难。 您可以在页面上创建这样的方法:

  

然后从控件的onmouseout事件中调用该函数,该控件是BalloonPopupExtender的TargetControlID (在我的示例中为Panel1 )。 这是我用来测试javascript的代码:

     
Hey! Here's some stuff!

正是我在寻找什么。 但是,而不是所有额外的JavaScript,只需将onmouseout="BalloonPopupControlBehavior.hidePopup();" 在控制中。

我对jadarnel27的答案做了一些改进,因为我有多个控件,每个控件都有自己的气球扩展器。

   
Help text goes here

然后在代码背后

 if (!Page.IsPostBack) { imgHelp1.Attributes.Add("onmouseout", "document.getElementById(\"" + imgHelp1.ClientID + "\").BalloonPopupControlBehavior.hidePopup();"); } 

这样我们就完全不需要javascript函数,并允许在同一页面上进行更多控制。