jQuery:日期范围选择器:在元素中添加日期

时间:2010-11-14 18:39:03

标签: jquery datepicker jquery-ui-datepicker

所以我有这个选择器:

http://www.filamentgroup.com/lab/date_range_picker_using_jquery_ui_16_and_jquery_ui_css_framework/

现在,当您选择日期时,如何将您选择的日期/日期范围添加到div元素#viewCalender中? 我试过了:

        <script type="text/javascript"> 
            $(function(){
                  $('#rangeA').daterangepicker({
                  arrows:true,
                  onChange: function(){
$('#calenderView').prepend('test');
}
                  }); 
             });
        </script>

但它预先在#calenderView中进行了两次“测试”,甚至尝试了只是警报,并且在我选择了一个日期之后我得到两个警报,我不明白为什么???我怎样才能将日期/日期范围添加到其中?

1 个答案:

答案 0 :(得分:0)

发布一个完整的html文档,可以复制并立即尝试,这将有很大帮助。

我只能猜,但我会说:

$(function() {
    $('#rangeA').daterangepicker({
        arrows: true,
        onChange: function(event) {
            // try this one
            event.stopPropagation()
            $('#calenderView').prepend('test');
            // and/or this
            return false;
        }
    });
});

修改

我阅读了手册,并且声明onChange是一个回调,“只要日期输入发生变化就会执行(在范围选择上可能会发生两次)。”

http://www.filamentgroup.com/lab/date_range_picker_using_jquery_ui_16_and_jquery_ui_css_framework/

我设置了一个断点并使用Firebug调试了该脚本。并且whoopee,onSelect(第69行)被解雇两次,并且因为那些options.onChange(第90行)被解雇了两次。

也许你大喊使用onClose而不是onChange:

$(function() {
    $('#rangeA').daterangepicker({
        arrows: true,
        onClose: function(event) {
            $('#calenderView').prepend('test');
        }
    });
});

请参阅:http://jsfiddle.net/3zM3W/10/