简体   繁体   English

如何显示jQuery datepicker日期加载到div

[英]how to show jquery datepicker date onload into a div

<input id="datepicker1">   

 $(function() {
    $("#datepicker1").datepicker({
        dateFormat: "yy-mm-dd"
    }).datepicker("setDate", "0");
 });

datepicker in input, how to show jquery datepicker date onload into a div like this: 输入中的datepicker,如何将jQuery datepicker日期加载到div中,如下所示:

在此处输入图片说明

Here is my jQuery Mobile check-in and check-out sample with plausibility test: 这是我的jQuery Mobile签入和签出示例以及真实性测试:

在此处输入图片说明

JavaScript: JavaScript:

var monthNames = ["Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul", "Aug", "Sep", "Oct", "Nov", "Dec"];
var daysOfWeek = ["Sun", "Mon", "Tue", "Wed", "Thu", "Fri", "Sat"];

var today = new Date(Date.now()),
  cases = {
    "checkInDate": today,
    "checkOutDate": today
  },
  whichDate;

function enableDate(date) {
  var minDate;
  switch (whichDate) {
    case "checkInDate":
      minDate = today;
      break;
    case "checkOutDate":
      minDate = cases["checkInDate"];
      break;
  }
  return [date >= minDate, "", ""];
}

function plausibleCheckOut() {
  var checkInDate = cases["checkInDate"];
  var checkOutDate = cases["checkOutDate"];
  if (checkOutDate < checkInDate) {
    cases["checkOutDate"] = checkInDate;
    showDate("checkOutDate");
  }
}

HTML (just only one datepicker in a separate dialog-page): HTML(在单独的对话框页面中只有一个日期选择器):

  <div id="guestroom-page" data-role="page">
    <div data-role="header" data-position="fixed">
      <h1>Guestroom</h1>
    </div>
    <div role="main" class="ui-content">
        <div id="checkInDate">
          <h1>Arrival</h1>
          <span></span>
          <div></div>
        </div>
        <br>
        <br>
        <div id="checkOutDate">
          <h1>Departure</h1>
          <span></span>
          <div></div>
        </div>
    </div>
  </div>
  <div id="datepicker-page" data-role="page" data-dialog="true" data-close-btn="none">
    <div data-role="header" data-position="fixed">
      <h1 id="whichDate"></h1>
    </div>
    <div role="main" class="ui-content">
      <div id="datepicker"></div>
    </div>
  </div>

EDIT: I just discovered an error in my date comparison with the date passed from the datepicker, here is how i solved it: 编辑:我刚发现我的日期与从datepicker传递的日期进行比较时出现错误,这是我如何解决的问题:

Date.prototype.toMidnight = function (){
  this.setHours(0,0,0,0);
  return this;
};

var today = new Date(Date.now()).toMidnight();

Here is the updated working example 这是更新的工作示例

Check this JSFiddle 检查这个JSFiddle

Basically it hides the input and use the div click event to show the date picker. 基本上,它隐藏输入,并使用div click事件显示日期选择器。 When a date is selected it uses the date picker onSelect event to populate the div with values. 选择日期后,它将使用日期选择器的onSelect事件向div中填充值。

var days = ['Sun', 'Mon', 'Tue', 'Wed', 'Thu', 'Fri', 'Sat'];
var months = ['Jan', 'Feb', 'Mar', 'Apr', 'May', 'Jun', 'Jul', 'Aug', 'Sep', 'Oct', 'nov', 'Dec'];

$(function() {
   $("#datepicker1").datepicker({
     dateFormat: "yy-mm-dd",
     onSelect: function(dateText) {
       var dateObj = $(this).datepicker('getDate');

       $('#month').html(months[dateObj.getMonth()]);
       $('#day-name').html(days[dateObj.getDay()]);

       var dayNo = dateObj.getDate();

       if (dayNo.length == 1)
         $('#day-number').html('0' + dayNo);
       else
         $('#day-number').html(dayNo);
     }
   }).datepicker("setDate", "0");

   //div click event
   $('#date').on("click", function() {
     $('#datepicker1').datepicker('show');
   });
 });

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM