4

I'm using Robin Herbot's excellent jQuery Input Masks plugin. [ https://github.com/RobinHerbots/jquery.inputmask ]. It's quite complete and seems to have everything I need, but I can't seem to figure one thing out.

How do I create a mask like: "mm/dd/yyyy hh:mm pm" where both the date portion and the time portion work like the "date" and "time" masks work?

I can use date or time, but datetime uses the European dd/mm format rather than the mm/dd format I need. I've tried several permutations, but I'm clearly missing something and the documentation takes a lot for granted.

3 Answers 3

6

jQuery Input Mask

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

Check other aliases.

Sign up to request clarification or add additional context in comments.

Comments

2

Go here: http://digitalbush.com/projects/masked-input-plugin/

Use this:

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

You're welcome.

1 Comment

I've tried this mask, and the problem with it is that it accepts ANY digit for the first character while the "date" alias knows to only put a 0 or 1 there. If the user presses 8, it puts a 0 in the first position and the 8 in the second position.
0

Maskedinput plugin is the best solution for datetime type input - simply and lightweight.

As for "accepting ANY digit": you can easy modificate base js library regex by adding your own rules:

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

Comments

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.