我试图验证电话号码如下。61岁以后,应该只从2、3或6开始。例子如下。61-245623463 :有效61-345623456 :有效61-445623423 :无效61-645623485 :有效
我的当前代码如下所示。但它不起作用。
$("#mask_aus_phone").inputmask({mask: "61-2 9999 9999"});
$("#mask_aus_phone").inputmask({mask: "61-3 9999 9999"});
$("#mask_aus_phone").inputmask({mask: "61-6 9999 9999"});我也尝试了如下。但也不起作用。
$("#mask_aus_phone").inputmask({mask: "61-{2,3,6} 9999 9999"});谁能帮我验证一下。
发布于 2016-07-13 04:55:42
您可以将正则表达式输入到输入掩码中:
$('#mask_aus_phone').inputmask('Regex', {
regex: "^61-[236]"
});我使用了regex ^61-[236],但您也可以使用正的前瞻性,并断言61-后面的数字是2、3或6:
^61-(?:(?=[236]).)+更新:
您没有将其显式化,但如果要将61-后的数字总数限制为9,则可以尝试:
^61-[236]\d{8}$演示:
发布于 2018-04-14 21:46:08
不使用regex,您可以通过最近的电话分机构建一个小字典。
Inputmask.extendAliases({
my_phone: {
alias: "abstractphone",
placeholder: '#',
showMaskOnFocus: false,
phoneCodes: [{
mask: "61-2 #### ####",
region_name: 'Dois',
desc_en: "Second region"
}, {
mask: "61-3 #### ####",
region_name: 'Três',
desc_en: "Third region"
}, {
mask: "61-6 #### ####",
region_name: 'Seis',
desc_en: "6th region"
}],
onKeyValidation: function() {
let mt = $(this).inputmask("getmetadata");
$('#jqma span').text(
mt['region_name']+' - '+mt['desc_en']).css(
'color', `#${Math.floor(Math.random() *
0x1000000).toString(16).padStart(6, 0)}`
);
console.log(mt);
}
}
});
$('#jqma input').inputmask("my_phone");span {color:#37e;font-weight:bold;transition: color 1s}<script src="https://code.jquery.com/jquery-3.3.1.slim.min.js"></script>
<script src="https://rawgit.com/RobinHerbots/jquery.inputmask/4.x/dist/inputmask/inputmask.js"></script>
<script src="https://rawgit.com/RobinHerbots/jquery.inputmask/4.x/dist/inputmask/inputmask.extensions.js"></script>
<script src="https://rawgit.com/RobinHerbots/jquery.inputmask/4.x/dist/inputmask/inputmask.phone.extensions.js"></script>
<script src="https://rawgit.com/RobinHerbots/jquery.inputmask/4.x/dist/inputmask/jquery.inputmask.js"></script>
<script src="https://rawgit.com/RobinHerbots/jquery.inputmask/4.x/dist/inputmask/phone-codes/phone.js"></script>
<p id="jqma"><label>Extended phone alias: <input placeholder="61-# #### ####"/></label> <span/>
</p>
这个动态验证器示例是基于这个答案。解释如下:
https://stackoverflow.com/questions/38342863
复制相似问题