我有一个表单,只允许在文本框中输入数字,或者出现警告:
<form name="formName" action="" method="post" OnSubmit="return chkSubmit();">
Input Number
<input type="text" name="txtNumber" value="">
<input type="submit" name="btnSubmit" value="Submit">
</form>
Run Code Online (Sandbox Code Playgroud)
使用以下javascript:
<script>
function chkSubmit()
{
if(isNaN(document.formName.txtNumber.value))
{
alert('Please input numbers only.');
return false;
}
}</script>
Run Code Online (Sandbox Code Playgroud)
如何只允许输入4个字符?没有警报,只是阻止用户输入超过4个字符.
inputelements支持一个maxlength属性,例如:
<input type="text" name="txtNumber" value="" maxlength="4">
Run Code Online (Sandbox Code Playgroud)
...然后由用户代理(浏览器)强制执行.你也可以chkSubmit通过检查value属性的长度来强制执行它,但是它已经永远存在,我怀疑你会找到一个不能处理它的用户代理.
RobG的观点(在对问题的评论中)也是很好的:在表单提交之前限制用户往往会对他们感到恼火.它可能适用于您的用例,也可能不适用,但至少考虑不限制它们(但可能使用keypress事件提供一些视觉反馈),并且仅在提交时验证长度,Stack Overflow对注释的方式.
| 归档时间: |
|
| 查看次数: |
8122 次 |
| 最近记录: |