输入框当前数字验证

时间:2018-01-13 21:02:06

标签: html

如果我在输入框中输入电话号码。例017xxxxxx。 然后提交按钮将起作用。如果我在前3个字符中键入019或其他数字。提交按钮不起作用.i表示017xxxxxxxx的验证输入框。如果某人没有017.提交按钮将无效。我可以这样做吗?

2 个答案:

答案 0 :(得分:0)

你有没有试过<input type="tel">而不是<input type="number">? 你可以看看: https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input/tel

答案 1 :(得分:0)

您可以使用javascript regex(正则表达式)执行此操作。

通过在标签中设置submit button,将disabled设置为disabled="disabled"。使用按钮上的keyup()功能获取文本字段中的每个更改。

然后使用regex检查input value是否符合条件。如果是enable the button,则为disable it/keep it disabled

注意:此处使用的正则表达式('^ 017([0-9] +){6} $')将测试任何以017开头的输入,并确保它至少具有还有六个号码。

以下是代码示例:

function check(e)
{
   var regex = RegExp('^017([0-9]+){6}$', 'i');
   if(regex.test(e.value))
   {
       document.getElementById('submit').disabled = false;
   }
   else
   {
       document.getElementById('submit').disabled = true;
   }
}
<form>
  <input type="text" id="inputTel" onkeyup="check(this)" value=""/>
  <input type="submit" id="submit" value="submit me" disabled="disabled" />
</form>