我正在尝试创建一个需要填充9位数字的表单。我希望禁用提交按钮,直到表格完全填充9位数。我发现许多脚本已禁用按钮,直到填充但没有特定的长度。你能帮我吗?
<form name="form1">
<input type="text" name='text1' maxlength="9" class="phone-input">
<input type="button" value="submit" onclick="phonenumber(document.form1.text1); changeDiv();"/>
</form>
谢谢!
答案 0 :(得分:2)
您可以尝试使用模式。没试过,但必须是这样的:
<input pattern=".{9}">
答案 1 :(得分:0)
根据Markus的建议,除了pattern
之外,您还可以使用\d
属性来验证输入(指定required
仅允许数字)。然后,可以使用文本字段的validity.valid
属性来启用/禁用input
事件处理程序中的按钮:
<form name="form1">
<input id="txtPhone" type="text" name='text1' pattern="\d{9}" required maxlength="9" class="phone-input" >
<input id="btnSubmit" type="button" value="submit" disabled="disabled" />
</form>
<script>
document.getElementById("txtPhone").addEventListener("input", function () {
document.getElementById("btnSubmit").disabled = !this.validity.valid;
});
</script>
document.getElementById("txtPhone").addEventListener("input", function () {
document.getElementById("btnSubmit").disabled = !this.validity.valid;
});
&#13;
<form name="form1">
<input id="txtPhone" type="text" name='text1' pattern="\d{9}" required maxlength="9" class="phone-input" >
<input id="btnSubmit" type="button" value="submit" onclick="alert('Submit!');" disabled="disabled" />
</form>
&#13;