jquery onchange事件未在flatpickr()输入上工作

vktxenjb  于 12个月前  发布在  jQuery
关注(0)|答案(4)|浏览(105)

我已经创建了一个日期选择器flatpickr()日期选择器工作正常。但我试图在该日期选择器上创建onchange事件,但onchange事件不起作用我曾尝试创建一个类似myfunction的函数并在输入上调用它,但它也不起作用
谁能帮帮我

$('.flatpickr').flatpickr();
			$("#flatpickr-disable-range").flatpickr({
				disable: [
					{
						from: "2016-08-16",
						to: "2016-08-19"
					},
					"2016-08-24",
					new Date().fp_incr(30) // 30 days from now
				]
			});
( ".flatpickr" ).change(function() {
  alert( "Handler for .change() called." );
});
<script src="https://cdnjs.cloudflare.com/ajax/libs/flatpickr/4.5.7/flatpickr.min.js"></script>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.4.0/jquery.min.js"></script>
<div class="form-group">
							<input class="form-control flatpickr" id="set_exam_date" data-min-date="today" data-date-format="D F j, Y" placeholder="Select Date">
						</div>
ui7jx7zq

ui7jx7zq1#

首先更改脚本的顺序:

<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.4.0/jquery.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/flatpickr/4.5.7/flatpickr.min.js"></script>

然后你在搜索flatpickr之前忘记了jQuery符号:

$( ".flatpickr" ).change(function() {
  alert( "Handler for .change() called." );
});
8fsztsew

8fsztsew2#

你必须在HTML代码下面初始化一个jQuery和flatpickr。你应该在最后用在身体上。像这样:

$('.flatpickr').flatpickr();
        $("#flatpickr-disable-range").flatpickr({
          disable: [{
              from: "2016-08-16",
              to: "2016-08-19"
            },
            "2016-08-24",
            new Date().fp_incr(30) // 30 days from now
          ]
        });
        $(".flatpickr").change(function () {
          alert("Handler for .change() called.");
        });
<link href="https://cdn.jsdelivr.net/npm/flatpickr/dist/flatpickr.min.css" rel="stylesheet"/>
      <div class="form-group">
        <input class="form-control flatpickr" id="set_exam_date" data-min-date="today" data-date-format="D F j, Y"
          placeholder="Select Date">
      </div>
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/flatpickr/4.5.7/flatpickr.min.js"></script>
bprjcwpo

bprjcwpo3#

你也可以使用javascript vanilla。例如,我在vanilla js上使用flatpick版本。

flatpickr(".flatpickr", {});

document.querySelector(".flatpickr").onchange = function() {        
        alert("Hello");
        };
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/flatpickr/dist/flatpickr.min.css">
<script src="https://cdn.jsdelivr.net/npm/flatpickr"></script>
<input class="flatpickr" type="text" placeholder="Select Date.." readonly="readonly">
w7t8yxp5

w7t8yxp54#

check with flatpicker document

flatpickr(".datepicker" ,{
    onChange:function (){
      //date change function hear
    }
  });

相关问题