Маски ввода jQuery для ввода даты и времени с использованием американских дат

Я использую превосходный плагин jQuery Input Masks от Robin Herbot. [ https://github.com/RobinHerbots/jquery.inputmask]. Он довольно полный и, кажется, имеет все, что мне нужно, но я не могу понять одну вещь.

Как создать маску, например: "мм/дд/гггг чч:мм pm", где и часть даты, и часть времени работают так же, как маски "дата" и "время"?

Я могу использовать дату или время, но datetime использует европейский формат дд/мм, а не формат мм/дд, который мне нужен. Я пробовал несколько перестановок, но явно что-то упускаю, а документация многое воспринимает как должное.


person pbarney    schedule 28.01.2014    source источник


Ответы (3)


Маска ввода jQuery

$('#InputID').inputmask({
        mask: "2/1/y h:s t\\m",
        placeholder: "mm/dd/yyyy hh:mm xm",
        alias: "datetime",
        hourFormat: "12"
    });

Проверьте другие псевдонимы.

person Bob    schedule 31.01.2014

Перейдите сюда: http://digitalbush.com/projects/masked-input-plugin/

Использовать это:

$('#InputID').mask("99/99/9999 99:99 aa");

Пожалуйста.

person user2687646    schedule 28.01.2014
comment
Я пробовал эту маску, и проблема с ней в том, что она принимает ЛЮБУЮ цифру для первого символа, в то время как псевдоним даты знает, что нужно поместить туда только 0 или 1. Если пользователь нажимает 8, он помещает 0 в первую позицию и 8 во вторую позицию. - person pbarney; 28.01.2014

Плагин Maskedinput — лучшее решение для ввода типа даты и времени — простое и легкое.

Что касается «принятия ЛЮБОЙ цифры»: вы можете легко изменить регулярное выражение базовой библиотеки js, добавив свои собственные правила:

{ definitions: { 9: "[0-9]", 1: "[0-1]", 2: "[0-2]", a: "[A-Za-z]", "*": "[A-Za-z0-9]" }

person Dunadan    schedule 20.08.2014