输入日期加数字的掩码

Input mask for date plus number

本文关键字:掩码 数字 日期 输入      更新时间:2023-09-26

是否有办法使日期+数字掩码?我需要输入12/12/15-12345或者更好的是121215-12345。输入掩码必须检查日期是否正确,以及"-"之后是否只输入5个数字。

> var dateMask = new InputMask(JST_MASK_DATE+[fieldBuilder.literal("-"), fieldBuilder.inputNumbers(1, 5)], "date");

请不要责怪代码,我是新手…只是尝试了一些…如果你能让我的代码正常工作,那就太好了。

var date = '121215-13456'; // Here is the string you begin with
var valid = true; // if valid === true, the string is correct
// This will check the structure of the string and store the values in result
var result = /^('d{2})('d{2})('d{2})-'d{5}$/.exec(date);
// If i didn't match the mask
if (result === null)
    valid = false;
else
{
    var myDate = new Date(2000+parseInt(result[3]), (parseInt(result[2]) - 1), parseInt(result[1]));
    // If the date is incorrect
    if ((myDate.getMonth() + 1 != parseInt(result[2])) || (myDate.getDate() != parseInt(result[1])) || (myDate.getFullYear() != 2000 + parseInt(result[3])))
        valid = false;  
}
if (!valid)
{
    alert("Invalid");
}
else
{
    alert("Valid !");
}