2012-08-08 115 views
0

我有几个输入端共享类“日期”,他们每个人得到它从DB值,并转换为datepickers这样的:默认日期

$(".date").datepicker({ 
    changeMonth: true, 
    changeYear: true, 
    dateFormat: "dd/mm/yy" 
}); 

我需要的是,当我点击任何输入并显示日期选择器,该特定日期选择器的默认日期是存储在该值中的日期,而不是当天的日期。

我该怎么做?

我尝试没有成功以下

$(".date").datepicker({ 
    changeMonth: true, 
    changeYear: true, 
    dateFormat: "dd/mm/yy", 
    defaultDate: $(this).val() 
}); 

回答

3

你可能会过度思考这一点。看看这fiddle。点击每个输入并查看默认日期是输入的值。

HTML

<input type="text" class="date" value="02/05/2012" /> 
<input type="text" class="date" value="06/09/2015" />​ 

JS

$(function(){ 
    $(".date").datepicker({ 
     changeMonth: true, 
     changeYear: true, 
     dateFormat: "dd/mm/yy" 
    }); 
});​ 
+0

你是对的!结果发现,负责css的人在正常日期和默认日期之间没有区别,所以我总是以今天看到的是唯一不同颜色的日期。抱歉!! – 2012-08-08 19:16:17

0

试试这个代码:

$(".date").datepicker({ 
    changeMonth: true, 
    changeYear: true, 
    dateFormat: "dd/mm/yy" 
}).on("change", function() { 
    $(".date").datepicker("option", "defaultDate", this.value); 
}); 

这监听当输入的改变和更新defaultDate设置F或所有的日期选择器字段。请注意,根据操作输入的方式,您可能需要一个不同的事件(除了更改)。此外,当前日期值将始终覆盖默认日期(所以我的代码不适用于wanovak的示例,因为这些字段中已有值)。