如何将jquery-mobile-datebox mm-dd-yyyy显示格式的翻转框弹出显示顺序更改为dd-mm-yyyy

Posted

技术标签:

【中文标题】如何将jquery-mobile-datebox mm-dd-yyyy显示格式的翻转框弹出显示顺序更改为dd-mm-yyyy【英文标题】:How to change flipbox popup display order of jquery-mobile-datebox mm-dd-yyyy display format to dd-mm-yyyy 【发布时间】:2012-09-07 08:44:49 【问题描述】:

我正在尝试修改 jquery-mobile-datebox 的翻转框的显示顺序,但我找不到任何相同的选项。我正在尝试通过 jquery 来做到这一点,但我仍然认为在 Flipbox 中可能有一个选项。

以下图片供参考。

下图默认显示弹出窗口

我需要弹出显示日期 |月 |年份如红色边框所示

我希望有人能帮助我!

【问题讨论】:

【参考方案1】:

我认为 Killrawr 方式是个好方法,但我在我的案例中看到了正确的“覆盖”字段名称: 是“overrideDateFieldOrder”而不是“fieldsOrderOverride”。我使用最新版本的 datebox。

如果您查看“i18n”中的几个键/字段,您会看到一个名为“dateFieldOrder”的键,所以 因为我已经使用了一些覆盖方法,通过覆盖前缀键,它似乎运行良好。

所以在我这样做的时候:

jQuery.extend(jQuery.mobile.datebox.prototype.options, 
                'overrideDateFieldOrder': ['d','m','y']
            );

运行良好。

另一种方法也是这样做的:

$('#mydate').data("options", "overrideDateFieldOrder": ["d", "m", "y"]);

或者在你的情况下是最好的,我认为:

    <input name="mydate" id="mydate" type="date" data-role="datebox" data-options='"overrideDateFieldOrder":["d", "m", "y"]' />

注意:最后一行中“和”的使用很重要。标签

data-option='"overrideDateFieldOrder":["d", "m", "y"]'

运行良好,但不像

data-option="'overrideDateFieldOrder':['d','m','y']"

没有运行。

问候,

【讨论】:

谢谢!你是对的,Killrawr 的想法是正确的,但它使用了错误的属性名称。正确的属性名称是“overrideDateFieldOrder”。 - bau - 我认为你的第一段有错误。你写的是“fieldsOrderOverride”而不是“fieldsOrderOverride”。但我认为你的意思是写 '"overrideDateFieldOrder" 而不是 "fieldsOrderOverride"' ;) 这是最好的答案。此处记录了该选项:dev.jtsage.com/jQM-DateBox/api/dateFieldOrder,此处对“覆盖”前缀的使用进行了更好的解释:dev.jtsage.com/jQM-DateBox/doc/3-2-locale【参考方案2】:

我猜你正在使用这个DatePicker。在这种情况下,您是否查看了所有 options 即 ['m','d','y']

fieldsOrderOverride

Type:
    Array

Default:
    Inherited

Modes:
        time/date/flip/slide

Override the i8n fields order. Option is an array of three items, for 24 clock mode 'a' is ignored. i.e. ['m','d','y']

Valid options:

    y : Year
    m : Month
    d : Day of Month (date)
    h : Hour
    i : Minute
    a : Meridiem

实施(来源here)

<input name="mydate" id="mydate" type="date" data-role="datebox"
data-options='"mode": "timebox", "fieldsOrderOverride": "d m y" '>

【讨论】:

感谢您的回复!是的,它是一样的,我使用了你提到的选项,但仍然显示弹出窗口为月 |日期 |年。下面是我用过的代码&lt;input name="mydate" id="mydate" type="date" data-role="datebox" data-options='"mode": "flipbox","fieldsOrderOverride": "d m y", "minYear": 1912, "maxYear": 2013'&gt; 看到these list of options in Text Internationaliztion 并更新代码如下&lt;input name="mydate" id="mydate" type="date" data-role="datebox" data-options='"mode": "flipbox","dateFieldOrder": ["d","m","y"], "minYear": 1912, "maxYear": 2013'&gt; 但它仍然显示包含 m d y 格式的默认弹出窗口 今晚或明天我会看看它,并尝试为您找到一个硬编码的解决方案。【参考方案3】:

试试这个:

<input name="mydate" id="mydate" type="date" data-role="datebox" data-options="\"mode\":\"calbox\",\"fieldsOrderOverride\": [\"d\",\"m\",\"y\"],\"headerFormat\":\"%A,%d, %-m, %Y\",\"dateFormat\":\"dd/mm/YYYY\",\"useTodayButton\":true">

【讨论】:

【参考方案4】:

如果您使用的是Jquery mobile datebox,我的回答会很有用。

下面给出的我的 html

<input type="text" name="scheduled_date" id="date-value" data-role="datebox" data-options='"mode":"datebox","afterToday":"true","overrideDateFormat":"%d-%m-%Y","useFocus":true,"overrideDateFieldOrder": "dmy"' placeholder="Date here">

overrideDateFieldOrder": "dmy" 是我用来解决相同问题的属性。

以下链接会很有用

http://dev.jtsage.com/jQM-DateBox/api/dateFieldOrder/

【讨论】:

以上是关于如何将jquery-mobile-datebox mm-dd-yyyy显示格式的翻转框弹出显示顺序更改为dd-mm-yyyy的主要内容,如果未能解决你的问题,请参考以下文章

如何将thinkcmf导入eclipse

如何将CString转换成wstring

如何将Ios文件上传到

Qt如何将文字变成图片?

如何将Bitmap保存为本地图片文件?

在MATLAB中如何将图导出