仅用于正整数的HTML输入(类型=数字) [英] HTML input for Positive Whole Numbers Only (Type=number)

查看:546
本文介绍了仅用于正整数的HTML输入(类型=数字)的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我找不到正确的正则表达式模式,即使这类问题有很多。



我不希望用户能够输入或输入

 < td>< input type =numberpattern =0 + \。[0 -9] * [1-9] [0-9] * $name =itemConsumption/>< / td> 




  1. -1.0(负值)
  2. 字符串值和任何字符

  3. 1.0(十进制值)

  4. 无范围限制

我只想接受正数整数

求解
不需要正则表达式,我不知道这个: D


 < td>< input type =numberpattern =0 + \。[0-9] * [1-9] [0-9] * $name =itemConsumptiononkeypress =return event.charCode> = 48&& event.charCode< = 57< / td> 


解决方案

/ p>

 < input type =textonkeypress =return(event.charCode == 8 || event.charCode == 0 || event.charCode == 13)?null:event.charCode> = 48&& event.charCode< = 57name =itemConsumption/> 
^ ------------....

< form id =mfrm>< table> < TR> < td>仅输入数字:< input type =textname =itemConsumptiononkeypress =return(event.charCode == 8 || event.charCode == 0 || event.charCode == 13)? null:event.charCode> = 48&& event.charCode< = 57/>< / td> < td>< input type =Submit/>< / td> < / tr>< / table>

$ b

event.charCode == 8 || event.charCode == 0 || event.charCode == 13 条件处理按下DELETE,BACKSPACE或ENTER键时的情况(对Firefox很重要,参见 Mohit的评论以下和 datashaman's comment 与启用ENTER键相关)。
$ b event.charCode> = 48&& event.charCode< = 57 表示仅返回0(十进制代码48)和所有其他数字9(十进制代码57)。

I can't find the right regex pattern for this, even though there are a lot of questions in this kind.

I dont want the user to be able to type or input

<td><input type="number" pattern=" 0+\.[0-9]*[1-9][0-9]*$" name="itemConsumption" /></td>

  1. -1.0 (Negative values)
  2. String Values and any character
  3. 1.0 (Decimal Values)
  4. No range Limit

I only want to accept positive whole numbers

SOLVED no need for regex, I did not know this :D

<td><input type="number" pattern=" 0+\.[0-9]*[1-9][0-9]*$" name="itemConsumption" onkeypress="return event.charCode >= 48 && event.charCode <= 57"</td> 

解决方案

To diallow any input but numeric, you may use

<input type="text" onkeypress="return (event.charCode == 8 || event.charCode == 0 || event.charCode == 13) ? null : event.charCode >= 48 && event.charCode <= 57" name="itemConsumption" />
                   ^------------....

<form id="mfrm">
<table>
    <tr>
        <td>Enter number only: <input type="text" name="itemConsumption" onkeypress="return (event.charCode == 8 || event.charCode == 0 || event.charCode == 13) ? null : event.charCode >= 48 && event.charCode <= 57" /></td>
        <td><input type="Submit"/></td>
    </tr>
</table>

Here, the event.charCode == 8 || event.charCode == 0 || event.charCode == 13 condition handles the case when DELETE, BACKSPACE or ENTER keys are pressed (important for Firefox, see Mohit's comment below and datashaman's comment related to enabling the ENTER key).

The event.charCode >= 48 && event.charCode <= 57 means that only 0 (decimal code 48) and all other digits up to 9 (decimal code 57) will be returned.

这篇关于仅用于正整数的HTML输入(类型=数字)的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆