jQuery日期选择器日计数器

jQuery日期选择器日计数器,jquery,date,datepicker,Jquery,Date,Datepicker,当输入“到”日期时,我如何让它在“天数”框中输出“从”和“到”日期选择器之间的天数差?我不希望从按钮触发警报框 提前感谢。连接到日期选择器的onSelect功能 $('#to').datepicker({ dateFormat: 'mm/dd/yyyy' onSelect:function(dateText,inst){ var start = $('#from').datepicker('getDate'); var end = $('#to').datepicker

当输入“到”日期时,我如何让它在“天数”框中输出“从”和“到”日期选择器之间的天数差?我不希望从按钮触发警报框


提前感谢。

连接到日期选择器的onSelect功能

$('#to').datepicker({ dateFormat: 'mm/dd/yyyy' 
  onSelect:function(dateText,inst){
    var start   = $('#from').datepicker('getDate');
    var end = $('#to').datepicker('getDate');
    var days   = (end - start)/1000/60/60/24;
    $('#resultado').val(days);
  }
});
$("#datepicker1").datepicker({
    beforeShow: setminDate,
    onSelect: function(date) {
     calculate(); 
    }
});
并将您的计算逻辑移动到一个方法中,您可以调用该方法或将其直接放入声明中

function calculate() {
    var start = $('#datepicker').datepicker('getDate');
    var end = $('#datepicker1').datepicker('getDate');
    var days = (end - start) / 1000 / 60 / 60 / 24;
    alert(days);
}
然后使用onSelect属性:

$('#datepicker1').datepicker({

onSelect: function(dateText, inst) {

var start   = $('#datepicker').datepicker('getDate');

var end = $('#datepicker1').datepicker('getDate');

var days   = (end - start)/1000/60/60/24;

$('#numDays').val(days);
}
});
或者类似于西姆利亚尔的东西

更新我已经更新了JSFIDLE项目。。但代码是这样的

(HTML没有正确显示) 基本上确保输入具有id='numDays'

天数

//开始JSScript:

$(“#datepicker”).datepicker({minDate:“01/07/2012”,maxDate:“01/30/2012”})

正如我所说,我还更新了jsfiddle.net页面。。但这是你需要做的

我刚在FireFox上测试过,工作正常


…gahd在评论中添加HTML是一个愚蠢的行为。。。希望它现在有意义

是否需要创建一个调用calculate的函数?您可以简单地使用onSelect:calculate(不带括号)。@Archer,如果他仍然想保留按钮以便手动触发,那么它只会阻止他使用两次相同的代码,因为他们都可以调用calculate。除此之外,没有理由。10分钟内回答3个。。。谁还需要书!!谢谢这在理论上看起来不错,但我无法让它工作-你能在给出的JS fiddle示例中发布它工作吗?我只是希望结果显示在“天数”文本框中。谢谢您的时间Hanzolo!我刚刚想出来,把事情搞得太复杂了。顺便说一句,当你在JS fiddle中修改帖子时,url每次都会增加。这是展示示例的好方法,但是您必须记住添加到更新版本的链接。再次感谢!没问题,很高兴知道。。JSFIDLE是一个非常简洁的小工具,我建议您访问jQueryUI控件的文档页面
$('#datepicker1').datepicker({

onSelect: function(dateText, inst) {

var start   = $('#datepicker').datepicker('getDate');

var end = $('#datepicker1').datepicker('getDate');

var days   = (end - start)/1000/60/60/24;

$('#numDays').val(days);
}
});
$("#datepicker1").datepicker({
            beforeShow: setminDate,
            onSelect: function(dateText, inst) {

            var start   = $('#datepicker').datepicker('getDate');

            var end = $('#datepicker1').datepicker('getDate');

            var days   = (end - start)/1000/60/60/24;

            $('#numDays').val(days);
            }
        });