You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何去除Inputmask输入框掩码并验证有效内容长度?

解决jQuery Inputmask掩码输入框获取有效内容长度的问题

你的代码存在几个关键错误:

  • input元素没有innerHTML属性,输入值存在value属性中,你用错了获取值的方式
  • test是你定义的变量,不是DOM元素,不能用document.getElementById("test")去获取它
  • 逻辑判断里的条件顺序和写法有问题,导致无法正确触发判断

正确的两种解决方法:

方法一:使用Inputmask插件自带方法(推荐)

插件本身提供了获取未格式化原始值的API unmaskedvalue(),能直接拿到用户输入的纯数字,无需自己处理掩码:

$("#myBtn1").click(function(e) {
    e.preventDefault(); // 阻止表单默认提交行为
    var rawPhone = $("#HomePhone").inputmask('unmaskedvalue');
    if (rawPhone !== "" && rawPhone.length < 10) {
        alert("Phone needs to be 10 digits long");
    }
});

方法二:手动提取有效数字

如果不想依赖插件API,可以直接获取输入框的value,用正则去除所有非数字字符后判断长度:

$("#myBtn1").click(function(e) {
    e.preventDefault();
    var phoneVal = document.getElementById("HomePhone").value;
    var cleanDigits = phoneVal.replace(/\D/g, ''); // 过滤所有非数字字符
    if (cleanDigits !== "" && cleanDigits.length < 10) {
        alert("Phone needs to be 10 digits long");
    }
});

内容的提问来源于stack exchange,提问作者rimi

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.24 17:02:29