仅限数字的html表单

仅限数字的html表单,html,Html,如果您希望在html文本框中只输入数字,那么代码是什么。 如果输入字母,则不会显示任何字母。如果您输入数字,数字会显示出来,请帮助您需要使用JavaScript来控制这一点,我建议使用jQuery,这是许多输入屏蔽插件之一:html表单可以使用text属性。我建议您在服务器端使用regex,让它只返回一个数字。您可以将正则表达式与javascript一起使用,但可能不如服务器端实现安全。如果您希望冒险使用规范草案,可以使用: (另见,) 浏览器对此的支持目前非常有限,但正在增加。您可能希望添

如果您希望在html文本框中只输入数字,那么代码是什么。
如果输入字母,则不会显示任何字母。如果您输入数字,数字会显示出来,请帮助您需要使用JavaScript来控制这一点,我建议使用jQuery,这是许多输入屏蔽插件之一:

html表单可以使用
text
属性。我建议您在服务器端使用regex,让它只返回一个数字。您可以将正则表达式与javascript一起使用,但可能不如服务器端实现安全。

如果您希望冒险使用规范草案,可以使用:


(另见,)

浏览器对此的支持目前非常有限,但正在增加。您可能希望添加JavaScript以模拟在不太先进的浏览器中的支持。有各种各样的项目可以做到这一点,包括和

显然,无论您采取哪种方法解决问题,您仍然需要对数据进行服务器端检查(您永远不能信任客户端,因为您施加的任何限制都可能被用户绕过)。

尝试以下方法:

 <HTML>
       <HEAD>
       <SCRIPT type="text/javascript">

          function isNumberKey(evt)
          {
             var charCode = (evt.which) ? evt.which : event.keyCode
             if (charCode > 31 && (charCode < 48 || charCode > 57))
                return false;

             return true;
          }

       </SCRIPT>
       </HEAD>
       <BODY>
          <INPUT id="txtChar" onkeypress="return isNumberKey(event)" type="text" name="txtChar">
       </BODY>
    </HTML>

函数isNumberKey(evt)
{
var charCode=(evt.which)?evt.which:event.keyCode
如果(字符码>31&(字符码<48 | |字符码>57))
返回false;
返回true;
}

要仅输入数字,可以创建jQuery函数来验证在输入文本框中键入的字符

您的html代码可能如下所示:

<input class="integerInput" type="text">
$(function() {
    $('.integerInput').on('input', function() {
      this.value = this.value
        .replace(/[^\d]/g, ''); // numbers only

    });
});

它是type属性的值,而不是属性本身。正则表达式不应该是即时的——通常有更有效、更容易阅读的方法来确定某个东西是否是数字。在检查表单数据是否符合要求时,客户端方法永远不会是安全的,但它确实会让用户感觉更好,所以应该同时使用这两种方法。实际上,您必须同时使用这两种方法。客户端对于用户交互很好,并且减少了在服务器指出存在哪些错误后必须再次提交表单的问题。服务器端用于验证。这无法处理粘贴的数据。-这并不能防止它有缺陷。
$(function() {
    $('.integerInput').on('input', function() {
      this.value = this.value
        .replace(/[^\d]/g, ''); // numbers only

    });
});