javascript datepicker检测输入字段中的更改值

时间:2016-04-18 12:14:30

标签: javascript jquery datepicker

我有基于mootools的简单日期选择器(http://www.monkeyphysics.com/mootools/script/2/datepicker) 这不是jQuery datepicker,它的事件触发器不起作用。

我需要计算日期和其他事情一旦选择日期,计算工作正常,我需要它在用户决定更改日期后触发,我已经尝试了所有可以找到的事件处理程序,如果你这些都可以工作按Enter键或单击另一个字段,但应在单击(拾取)日期后立即重新计算。

<input type="text" name="arrival" value="2016-10-05" title="" class="fromdate">
<input type="text" name="departure" value="2016-10-08" title="" class="todate">
<input type="text" name="addnight" value="" title="" class="calculated">

<script type="text/javascript">
  $("select, input, .datepicker_dashboard").on("change paste keyup blur click mouseup hover focus focusout", function() {

   var calculus = daydiff(parseDate($('.fromdate').val()), parseDate($('.todate').val()));
if (calculus<0) {var calculus=0;}
$(".calculated").val(calculus);

}
</script>

2 个答案:

答案 0 :(得分:2)

阅读文档(由您自己链接)告诉我,您可以在创建带有onSelect

的日期选择器时在选项中设置new DatePicker(input-target-selector [, options-object]);处理程序
  

<强> ONSELECT
  选择日期时触发事件挂钩。 (v1.16 +:附带1   参数,表示所选的标准javascript Date对象   日期)

答案 1 :(得分:0)

试试这个。我从下面列出的链接中得到了答案 Trigger function when date is selected with jQuery UI datepicker

  $("#dt").datepicker({
  onSelect: function(dateText, inst) {
    var date = $(this).val();
    var time = $('#time').val();
    alert('on select triggered');
    $("#start").val(date + time.toString('              HH:mm').toString());

  }
  });