如何防止用户在年份区域输入超过4位数

时间:2013-09-02 08:00:00

标签: jquery-mobile

我正在研究JQuery Mobile Datebox,我无法解决这个问题。如果用户在年份区域输入类似 1988123 的奇怪输入,则datebox会变得疯狂并更改日期值“undefined,undefined NaN,NaN”。

我尝试从Datebox获取仅年份值,但是日,月或年区域没有id字段。所以我无法得到任何解决方案。有人能帮助我吗?

2 个答案:

答案 0 :(得分:0)

尝试HTML5模式:

<form
onsubmit="alert('Submitted.');return false;">
    <input
    type="text"
    required=""
    pattern="(?:19|20)[0-9]{2}-(?:(?:0[1-9]|1[0-2])-(?:0[1-9]|1[0-9]|2[0-9])|(?:(?!02)(?:0[1-9]|1[0-2])-(?:30))|(?:(?:0[13578]|1[02])-31))"
    value=""
    name="dates_pattern2"
    id="dates_pattern2"
    list="dates_pattern2_datalist"
    placeholder="Try it out.">
    <input
    type="submit"
    value="»">
    <datalist
    id="dates_pattern2_datalist"></datalist>
</form>

答案 1 :(得分:0)

最后我确实找到了解决方案。 如您所知,JQuery Mobile Datebox有一些数据选项。我找到了一个“maxYear”的选项。

<input  name="tarih1" id="tarih1"  type="date" data-role="datebox" data-options='{"mode": "datebox", "maxYear":"3000"}' placeholder="GG.AA.YYYY">

使用此解决方案,用户无法选择超过4位数的年份。 (你可以把3000换成另外4位数。不要忘记,如果你选择1999年,用户不能选择大于1999年)

相关问题