鼠标移开时关闭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函数,并允许在同一页面上进行更多控制。