繁体   English   中英

JavaScript,文本字段中的字符数限制

[英]javascript, limit number of characters in text field

我有一个只允许在文本框中输入数字的表格,否则会出现警报:

<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>

使用以下javascript:

<script>
function chkSubmit()
{
     if(isNaN(document.formName.txtNumber.value))
     {
        alert('Please input numbers only.');
        return false;
     }
}</script>

如何只允许输入4个字符? 没有警报,只是防止用户键入超过4个字符。

input元素支持maxlength属性 ,例如:

<input type="text" name="txtNumber" value="" maxlength="4">

...然后由用户代理(浏览器)强制执行。 如果您想要chkSubmit方法,也可以在chkSubmit强制执行此操作,方法是检查value属性的长度,但是这种方法已经存在很长时间了,我怀疑您会发现一个不处理它的用户代理。

RobG的观点(在对该问题的评论中)也很容易理解:在提交表单之前限制用户对他们来说很烦人。 它可能适合您的情况,也可能不适合您的情况,但至少应考虑不限制它们(但可能使用keypress事件提供一些视觉反馈),并且仅验证提交时的长度,即Stack Overflow对注释的处理方式。

使用最大长度

<form name="formName" action="" method="post" OnSubmit="return chkSubmit();"> 
    <input type="text" name="txtNumber" maxlength="4" value="" />
    <input type="submit" name="btnSubmit" value="Submit" />
</form>

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM