2017-03-01 4 views
3

Wenn ich mein jquery.inputmask Plugin von 3.3.1 auf 3.3.4 aktualisiere, bemerkte ich, dass das Datetime-Format für die Maske geändert wurde.Datetime Format Bug für jquery.inputmask 3.3.4?

// in version 3.3.1 
$("#textbox").inputmask("y-m-d"); 
$("#textbox").inputmask("h:s"); 

// in version 3.3.4 
$("#textbox").inputmask("yyyy-mm-dd"); 
$("#textbox").inputmask("hh:mm"); 

In v3.3.4, Buchstaben "m" für beide "Monat" und "Minute", einige Maskendefinitionen wahrscheinlich conficts werden verwendet, um zu bewirken, zum Beispiel

$("#textbox").inputmask("yyyy-mm-dd hh:mm"); // ERROR! can't input anything into textbox 
$("#textbox").inputmask("mm/dd/yyyy hh:mm xm"); // but this works fine 

nur Dieses Problem tritt auf in jquery.inputmask 3.3.4

Ist es ein Fehler? Wie kann ich die Maske "year-month-day hour:minute" in meiner Seite arbeiten lassen?

Antwort

1

Nach ein wenig in den Quellcode zu graben, es sieht aus wie Sie Inputmask.extendAliases können durch Hinzufügen eines benutzerdefinierten Alias ​​für Ihren spezifischen Anwendungsfall, den Fehler zu beheben:

Inputmask.extendAliases({ 
 
    "yyyy-mm-dd hh:mm": { 
 
    mask: "y-1-2 h:s", 
 
    placeholder: "yyyy-mm-dd hh:mm", 
 
    alias: "datetime", 
 
    separator: "-" 
 
    } 
 
}) 
 

 
$("#textbox").inputmask("yyyy-mm-dd hh:mm")
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
 
<script src="https://rawgit.com/RobinHerbots/Inputmask/3.x/dist/jquery.inputmask.bundle.js"></script> 
 

 
<input id="textbox" type="text">