无法配置jQuery datepicker以选择默认日期

时间:2013-12-19 16:32:53

标签: javascript jquery jquery-ui datepicker

我使用以下插件作为日期选择器:

http://xdsoft.net/jqplugins/datetimepicker/

这是一个非常好的插件,但我发现加载盒子时很难设置默认日期。

请参阅此fiddle

$('.datepicker').datepicker();

方框1包含25/12/2013。当用户选择此框时,我希望datepicker默认为此日期。方框2不包含任何内容因此盒子应该默认为今天。

NB 目前正在使用标准的jquery-ui-datepicker。

我尝试过设置各种选项但没有成功。我还尝试读取设置值的位置,但再次看不到输入的引用位置。

任何帮助都将不胜感激。

2 个答案:

答案 0 :(得分:0)

$('.datepicker').datepicker()
                .filter('[value!=""]')
                .datepicker('setDate', '12/25/13');

FIDDLE

作为旁注,您可以将defaultDate设置为在用户未选择日期时提交的任何日期选择器,但该日期未显示为输入值

$('.datepicker').datepicker()
                .filter('[value!=""]')
                .datepicker( "option", "defaultDate", '12/25/13' );

答案 1 :(得分:0)

在您的原始问题中,您说您正在使用第三方datepicker插件,但在您的小提琴中,您正在使用JQueryUI DatePicker。所以这是JQueryUI datepicker的一个例子。 我确信它可以很容易地为第三方插件更新。

试试这个:

HTML:

Box 1
<input type="text" class="datepicker" value="25/12/2013" />

Box 2
<input type="text" class="datepicker" value=""/>

使用Javascript:

$('.datepicker').each(function(index){
    var dateStr = $(this).attr("value");
    var date=new Date();

    if(dateStr.length>0)
        date=$.datepicker.parseDate("dd/mm/yy", dateStr);

    $(this).datepicker({defaultDate:date});
});

JSFiddle:http://jsfiddle.net/HVk7W/3/