ThaiSEOBoard.com

พัฒนาเว็บไซต์ => Programming => ข้อความที่เริ่มโดย: bwnm29 ที่ 24 สิงหาคม 2017, 14:59:45



หัวข้อ: สอบถามวิธีใส่ค่า วันที่เริ่มต้นใน datepicker
เริ่มหัวข้อโดย: bwnm29 ที่ 24 สิงหาคม 2017, 14:59:45
ผมต้องการใส่ค่าเริ่มต้นของปฏิทินเป็นวันที่ 15 พย 2017  เลือกได้ถึงวันที่  3 มีค 2018

ต้องเปลี่่ยนที่บรรทัดไหนครับ มือใหม่ ลองเปลี่ยนแล้วมันไม่ขึ้น ตอนนี้มันแสดงวันที่เริ่มต้นเป็นปัจจุบันอยู่

โค๊ด:
/* Datepicker */
  DatePicker();
  function DatePicker() {
    var apb_get_day_advance = (typeof apb_day_book != 'undefined') ? parseInt(apb_day_book) : 0;
    var date_format = (jQuery.datepicker.regional[apb_lang].dateFormat) ? jQuery.datepicker.regional[apb_lang].dateFormat : 'mm/dd/yy';
    var apb_number_of_calendar = (typeof apbAjax.apb_number_calendar != 'undefined') ? parseInt(apbAjax.apb_number_calendar) : 2;
    $('.date-start-js').datepicker({
      format: "mm/dd/yy",
      buttonImageOnly: false,
      //defaultDate: "+1w",
  //ไม่เปลี่ยนแปลงถ้าเอาออก แค่ขึ้นวันเต็มเดือน
      numberOfMonths: apb_number_of_calendar,
      minDate : apb_get_day_advance,

      onClose: function( selectedDate ) {
        var $this = $(this);
        var $form = $this.closest('form');
        if ( $('.apb-format-date').length == 0 ) {
          $form.append('<input type="hidden" name="apb_formatdate" class="apb-format-date" value="' + $.datepicker._defaults.dateFormat + '">');
        }
        if (selectedDate) {

          var timeConvert = new Date( $this.datepicker('getDate').getTime() );
          var number_nights = $form.find('.night-select-js').length ? parseInt( $form.find('.night-select-js').val() ) : 1;

          var $date_end = $form.find('.date-end-js');
          var date_end = new Date(timeConvert);
          date_end.setDate(date_end.getDate() + number_nights);

          $date_end.val($.datepicker.formatDate($.datepicker._defaults.dateFormat,new Date(date_end)));
          $date_end.attr("data-date",$.datepicker.formatDate('mm/dd/yy',new Date(date_end)));

          /*----------  Add Date Customize  ----------*/
          $this.attr("data-date",$.datepicker.formatDate('mm/dd/yy',new Date(timeConvert)));
          /*----------  Add Date Customize  ----------*/

          /*----------  Relationship to calendar  ----------*/
          $this.trigger('change');
          $('#apb_calendar').datepicker('refresh');
          $('#apb_calendar').datepicker('setDate', $.datepicker.formatDate( 'mm/dd/yy', new Date(timeConvert) ) );
          $('td.ui-datepicker-current-day a.ui-state-default').removeClass('ui-state-active');

          $form.find('.date-end-js').datepicker( "option", "minDate", date_end );
        }

      },
      beforeShow: function(input, inst) {
        $('#ui-datepicker-div').addClass('apb-datepicker');
      }
    });



หัวข้อ: Re: สอบถามวิธีใส่ค่า วันที่เริ่มต้นใน datepicker
เริ่มหัวข้อโดย: sputtaro ที่ 24 สิงหาคม 2017, 15:57:00
ปกติสามารถดูค่าตัวแปรที่ไว้กำหนด StartDate และ EndDate ได้จากฟอร์มนะครับ ว่าเขาเขียนไว้ยังไง
อาจเป็นทำนอง id="StartDate" หรือ name="StartDate" หรือมีทั้งสองอย่าง

แต่กรณีของคุณ ผมเดาจากเท่าที่ให้มา น่าจะเป็นทำนองนี้ครับ

.date-end-js คือคลาสที่ไว้กำหนดต่า $date_end จะเห็นที่ฟอร์มประมาณนี้ครับ class="date-end-js"
ส่วน selectedDate น่าจะเป็น StartDate
คุณลองกำหนดให้
var selectedDate='mm/dd/yy';
var $date_end ='mm/dd/yy';

mm/dd/yy นี่คือ เอาไว้ให้คุณกำหนดค่าเอานะครับ เปลี่ยนตามที่คุณต้องการดู

********************************

ถ้าผิดพลาดไป ขออภัยด้วยนะครับ


หัวข้อ: Re: สอบถามวิธีใส่ค่า วันที่เริ่มต้นใน datepicker
เริ่มหัวข้อโดย: infamous ที่ 24 สิงหาคม 2017, 17:57:01
ผมลองทำเป็นตัวอย่างให้ดูแล้วนะครับ แต่เป็น daterangepicker ครับ
โดยโค๊ดจะง่ายที่สุดเท่าที่มือใหม่จะสามารถทำความเข้าใจได้

โค๊ด:
https://jsfiddle.net/kx4zrvmL/12/

จริงๆแล้ว การเขียนโปรแกรมเป็นเรื่องที่ดีครับ เพราะมันจะสอนให้เรารู้จักคิด วางแผนแบบมีรูปแบบและขั้นตอนครับ
แต่ถ้าเรายังไม่พร้อมกับจุดที่ยากเกินไป แนะนำได้เริ่มจากง่ายๆก่อน หรือพวก third party ครับ
เพราะอย่างน้อยคือ ส่วนใหญ่จะมีคู่มือการใช้งานหรือปรับแต่งให้เราทำตามด้วยครับ


หัวข้อ: Re: สอบถามวิธีใส่ค่า วันที่เริ่มต้นใน datepicker
เริ่มหัวข้อโดย: chaynuwong ที่ 28 สิงหาคม 2017, 02:59:09
https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input/date :wanwan003: :wanwan003: