4

我有一个使用 jQuery 的 datepicker 工具的输入。现在我知道我可以设置日期选择器使用的日期格式。问题是:我想以德语格式向用户显示日期,同时对数据库使用英语格式(dd-mm-yy 到 yy-mm-dd)。

我现在在这里有以下内容:

$(".date").datepicker({
    dateFormat: "dd-mm-yy",
    onSelect: function(dateText, inst) {
        $("#test").html($.inst.formatDate('yy-mm-dd', dateText); // What exactly do I have to do, to get the date from dd-mm-yy to yy-mm-dd
    }
});
4

2 回答 2

6

可能您最好的选择是使用日期选择器的altFieldaltFormat属性,正是出于这个原因:API Docs

如果将 altField 设置为隐藏的输入字段,则可以在上传到数据库时从那里获取数据,或者其他任何需要备用日期格式的数据。

于 2012-12-11T17:36:24.117 回答
2

我将它用于表单字段:

echo 'Set next action date: <input type="text" id="next_action" name="next_action" value="' . $next_action . '" />';

在 datepicker 的 scipt 设置中,我包含了这个选项:

dateFormat: 'yy-mm-dd',

这给了我正确的 MySQL 日期格式来在表中插入/更新。但它对访问者不是特别友好,所以我在页面顶部设置了我的首选格式:

if ($s['next_action'] >= "1") {
    $next_action = date($date_style,strtotime($s['next_action']));
} else {
    $next_action = '';
}

这取决于我的主包含文件中的一个变量:

$date_style = "F d, Y";

如果我选择一个日期,datepicker 会在提交时为我提供一个数据库的好日期,尽管它在提交之前会显示 yyyy-mm-dd 格式。提交后,它使用漂亮的显示。

于 2012-12-12T01:45:59.187 回答