【问题标题】:jquery ui datepicker with tooltip - tooltip function not call after month change带有工具提示的jquery ui datepicker - 工具提示功能在月份更改后不调用
【发布时间】:2011-04-04 09:00:29
【问题描述】:

我正在尝试使 jquery ui datepicker(内联作为日历)与工具提示一起使用。一切正常,工具提示一直显示,直到我更改日历中的月份。然后工具提示停止工作。我不知道如何解决这个问题,我将不胜感激。 下面是我的代码(我使用的是this 脚本)。

谢谢!

$(function() {

var specialDays = {
  '2011': {
    '3': {
      '10': {tooltip: "Some event", className: "holiday"}
    },
    '4': {
      '15': {tooltip: "Some another event", className: "holiday"}
    }
  }
};

$('#datepicker').datepicker({beforeShowDay: function(date) {
  var d = date.getDate(),
    m = date.getMonth()+1,
    y = date.getFullYear();

  if (specialDays[y] && specialDays[y][m] && specialDays[y][m][d]) {
    var s = specialDays[y][m][d];
    return [true, s.className, s.tooltip]; // selectable
  }
  return [false,'']; // non-selectable
}});

/* tooltip*/
$(".ui-datepicker-calendar tbody").tooltip();

});

【问题讨论】:

标签: jquery jquery-ui datepicker


【解决方案1】:

使用这个,它对我有用:

onChangeMonthYear: function(year, month, inst) {
                            setTimeout("$('.ui-datepicker-calendar tbody').tooltip()", '250');                              
                        }

【讨论】:

    【解决方案2】:

    $('#datepicker').datepicker 的功能包装在一个函数中。然后,在加载工具提示时将该函数名称作为回调传递给工具提示函数。

    您的事件未绑定的原因是 HTML 正在更改。

    进一步说明:在工具提示脚本的第 115 行,有一个可用于回调的事件:

    var initDatepicker = function(){
        $('#datepicker').datepicker({beforeShowDay: function(date) {
            // Your code...
        }});
    };
    
    $('.ui-datepicker-calendar tbody').tooltip({
        // On tooltip open, init the datepicker
        open: initDatepicker
    });
    

    【讨论】:

    • 现在日历根本没有显示。但是firebug中没有js错误。
    • 好的,可能是因为#datepicker 早在 DOM 中找到了。尝试将其更改为一个类,并相应地进行以下操作:$('.datepicker').datepicker(...)
    • 好吧,将其更改为类并没有帮助。我在这里发现了类似的问题,但使用了不同的工具提示插件link。不幸的是,我仍然无法弄清楚如何将它用于 ui 工具提示...非常感谢您的帮助。
    猜你喜欢
    • 2017-12-12
    • 1970-01-01
    • 1970-01-01
    • 2011-11-03
    • 1970-01-01
    • 2011-10-02
    • 1970-01-01
    • 1970-01-01
    • 2013-12-11
    相关资源
    最近更新 更多