首次单击时不显示Jquery Datepicker

时间:2015-06-17 09:23:51

标签: jquery datepicker jquery-ui-datepicker

我正在使用JQueryUI日期选择器,当第一次单击日历图像时,日历未显示。但是,当发生回发时,将显示日历。

我使用下面的代码片段来初始化datepicker:



$(function() {
      var date = new Date();
      var currentMonth = date.getMonth();
      var currentDate = date.getDate();
      var currentYear = date.getFullYear();

      $("#ReportDate").datepicker({
        showOn: "both",
        buttonImage: "calendar.png",
        buttonImageOnly: true,
        buttonText: "Select date",
        maxDate: new Date(currentYear, currentMonth, currentDate)
      });
   });

  .ui-datepicker {
            font-size: 8pt !important;
        }

<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.7.2/jquery.min.js"></script>
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta charset="utf-8">
<title>jQuery UI Datepicker</title>
<link rel="stylesheet" href="https://ajax.googleapis.com/ajax/libs/jqueryui/1.11.4/themes/smoothness/jquery-ui.css">
<script src="https://ajax.googleapis.com/ajax/libs/jqueryui/1.11.4/jquery-ui.min.js"></script>

</head>

<body>
<form id="form1" runat="server">
<div class="demo">
<b>Date:</b> <input type="text" id="ReportDate" />
</div>
</form>
</body>
</html>
&#13;
&#13;
&#13;

任何人都可以帮忙。我很长时间陷入困境。

3 个答案:

答案 0 :(得分:0)

您是否在pageload上初始化了datepicker?

<script>
  $(function() {
    $( "#datepicker" ).datepicker();
  });
</script>

修改

可能参考文献是错误的。 试试这个:https://jsfiddle.net/ddan/8vjtzru4/1/

答案 1 :(得分:0)

正如人们所理解的那样,当输入字段是页面的第一个输入并且在dom初始化时已经处于焦点状态时,通常会出现此问题。因此,我们需要再次单击该字段以初始化焦点和日期选择器。所以最好在点击功能上初始化datepicker。

$('#datepicker').click(function(){
    $('#datepicker').datepicker('show');
});

offcouse fiddle或者plunker的问题演示将有助于更多答案。

答案 2 :(得分:0)

我认为你的脚本标签中存在错误

我已更新您的代码Here

检查此链接并告诉我它是否正常工作。