0

帮助我使用罗马数字的屏蔽输入掩码。我需要创建一个掩码,我只能输入从 I 到 X 的罗马数字

4

1 回答 1

1

如果您不使用插件,最简单的方法是编写一个正则表达式并匹配一个输入值。如果在这里找到一个非常好的

$(function(){
    var strInput = $('input#myRomanInputField').val();
    var matchArr = strInput.match(/^M{0,4}(CM|CD|D?C{0,3})(XC|XL|L?X{0,3})(IX|IV|V?I{0,3})$/g);
    console.log(matchArr);
    if(matchArr) {
        // test successful
        console.log("true");
    } else {
        // failure
        console.log("false");
    }
});

对于数字 1-10,只需使用此正则表达式:

/^(IX|IV|V?I{0,3})$|^X$/g
于 2012-11-26T20:10:12.477 回答