使用jQuery隐藏RadTooltipManager

时间:2013-05-01 06:05:16

标签: jquery asp.net vb.net telerik

我的网站上有一个RadToolTipManager。我想要的是当我点击屏幕上的任何地方但RadToolTipManager时隐藏此工具提示。我有以下jQuery似乎工作正常,除了它隐藏工具提示即使单击工具提示本身。

$(document).ready(function() {
  $('form').bind('click', function(event) {
    var activeTooltip = Telerik.Web.UI.RadToolTip.getCurrent();
    if (activeTooltip && activeTooltip.isVisible()) {
      activeTooltip.hide();
    }
  });
});

任何建议都将不胜感激。

问候。

3 个答案:

答案 0 :(得分:0)

        $(document).ready(function () {
            $('form').bind('click', function (event) {

                if ($(event.target).is(".panelWrapper, .panelWrapper *")) {
                    return;
                }

                var activeTooltip = Telerik.Web.UI.RadToolTip.getCurrent();
                if (activeTooltip && activeTooltip.isVisible()) {
                    activeTooltip.hide();
                }
            });
        });

答案 1 :(得分:-1)

尝试:

$('html').click(function() {
    var activeTooltip = Telerik.Web.UI.RadToolTip.getCurrent();
    activeTooltip.hide();
});

$('form').click(function(event){
    event.stopPropagation();
});

答案 2 :(得分:-1)

因为你获得

的方式而无法正常工作的原因
 var activeTooltip = Telerik.Web.UI.RadToolTip.getCurrent();

activeTooltip未定义,因此您将收到错误消息:

TypeError: Cannot call method 'getCurrent' of undefined 

尝试以这种方式获取activeTooltip:

var activeTooltip = $find("<%=activeTooltip.ClientID%>");

如果您正在使用chrome或safari浏览器,请在单击后尝试转到控制台 看看是否有任何脚本错误。