Datepicker关闭失去焦点

时间:2016-12-13 13:09:46

标签: javascript jquery

我有一些JS正在关闭它的日期选择器上执行。每当我选择一个日期时,它都有效。当我从selectmenu中选择一个月或一年时,正在执行一个关注日期选择器并关闭它的事件。

有关如何追踪此事件的任何建议?

JsFiddle

相关代码

$(function() {
  $(".isDatepicker").datepicker({
    changeMonth: true,
    changeYear: true,
    showOn: "button",
    buttonText: "<i class='fa fa-calendar'></i>",
  });
});

4 个答案:

答案 0 :(得分:1)

在回答如何跟踪它的问题时,Firebug(Firefox的开发工具)允许您在删除或编辑HTML元素时设置断点。当您单击DOM树中的元素时,我相信它在菜单中。我想其他浏览器也有同等的东西。

答案 1 :(得分:0)

我相信你有相互矛盾的脚本。

删除下面的代码,它按设计工作。

  $("button.ui-datepicker-trigger").click(function() {
    $("select").selectmenu();
  });

http://jsfiddle.net/6m42tw6d/

答案 2 :(得分:0)

问题出在所有selectmenu();元素上进行select初始化。这是 updated fiddle ,其中我评论了selectmenu()初始化。

解决方案是,您需要定位特定的select元素或过滤掉select中的datepicker元素。这种行为正在混乱中。

答案 3 :(得分:0)

您正在多次初始化菜单。如果您需要刷新它,可以使用“刷新”:

$(function() {
  $(document).on('show.bs.modal', function() {
    $("select").selectmenu( "refresh" );
  });
  $("button.ui-datepicker-trigger").click(function(e) {
     $("select").selectmenu( "refresh" );
  });

  $("select").selectmenu();
  $("select").change(function() {
    alert("no");
  });
});