0

我在移动应用程序中使用以下 jquery 移动日期框插件进行日期控制。使用默认日期格式可以正常工作。但我想根据当前的文化设置应用日期格式,无论是手机还是桌面。根据设备日期格式,日期应填充到日期控件中。

<link rel="stylesheet" type="text/css" href="http://dev.jtsage.com/cdn/datebox/latest/jqm-datebox.min.css" />
 <script type="text/javascript" src="http://dev.jtsage.com/cdn/datebox/latest/jqm-datebox.core.min.js"></script>
    <script type="text/javascript" src="http://dev.jtsage.com/cdn/datebox/latest/jqm-datebox.mode.calbox.min.js"></script>

我尝试过以下方法。

jQuery.extend(jQuery.mobile.datebox.prototype.options.lang.default, { 'dateFormat': dformat , }); 

但是它有两个下面提到的限制,因此我无法使用这种方法。
1) iPhone 3/4 (safari 3.1.1 或更低版本) 不支持
2) 日期格式与 Window 格式不兼容(它使用 %d-%m-%y 等格式)。

我想使用这个插件,但它应该提供基于文化的日期格式选择。
请提供您的建议,如果您有任何疑问,请告诉我。

4

1 回答 1

1

不确定我是否真的理解您的问题,但通常您可以使用“覆盖”选项直接注入用户文化。在我的一个代码中,一旦我检测到用户文化,我就会使用如下脚本来完成这项工作:(我通过 htis 方式更新标题标题、日期字段顺序和日期格式)。

在此代码中,“sDateFormat”根据用户文化设置正确的模式。而“currentdatefield”是我的网络表单中日期字段的 jquery 变量:

currentdatefield.data("options", {
                    mode: "datebox",
                    useLang: varuserLocale,
                    useFocus: true,
                    useClearButton: true,
                    useCollapsedBut: true,
                    defaultValue: sDateForDefValue, /* defaultValue : this value must be a string formated in "yyyy-mm-dd" (not a JS object date) */
                    'overrideDateFieldOrder': DateFieldOrder,
                    'overrideHeaderFormat': vardateformat,
                    'overrideDateFormat': sDateFormat   /* Example: "%m/%d/%Y" This date format pattern is directly injected in the field linked */
                });
            });

不确定,它对你有帮助,但也许。

于 2012-11-05T11:30:02.387 回答