【问题标题】:JQuery datepicker not updating hidden field on .blurJQuery datepicker不更新.blur上的隐藏字段
【发布时间】:2012-06-28 06:09:14
【问题描述】:

我正在更新一个隐藏字段#start,其中包含两个字段:一个文本字段(用于时间)和一个日期选择器字段。但是,当我使用 datepicker 选择日期并且时间字段中没有任何内容时,隐藏字段不会更新。此外,当填写时间字段并通过 datepicker 选择日期时,日期会使用先前的选择而不是最近选择的日期进行更新(可能是由于输入值正在更新)。如何正确编写此函数?谢谢!

$("#datepicker").blur(function () {
        var date = $(this).val();
        var time = $('#time').val();
        $("#start").val(date + time.toString(' HH:mm').toString());
});

【问题讨论】:

    标签: jquery jquery-ui datepicker uidatepicker jquery-ui-datepicker


    【解决方案1】:

    不要使用 .blur(),使用 datepicker 的 onSelect 事件。

    jsFiddle example

    jQuery

    $("#datepicker").datepicker({
        onSelect: function(dateText, inst) {
            var date = $(this).val();
            var time = $('#time').val();
            $("#start").val(date + time.toString(' HH:mm').toString());
        }
    });​
    

    【讨论】:

      【解决方案2】:

      您应该添加“onSelect”事件处理程序以及“模糊”事件处理程序。 见例子on jsfiddle

      $("#datepicker").datepicker({onSelect: populateHidden});
      $("#datepicker").blur(populateHidden);
      
      
      function populateHidden()
      {
              var date = $("#datepicker").val();
              var time = $('#time').val();
              $("#start").val(date + ' ' + time);
      }
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2014-01-13
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多