仅用于正整数的HTML输入(类型=数字) [英] HTML input for Positive Whole Numbers Only (Type=number)
问题描述
我找不到正确的正则表达式模式,即使这类问题有很多。
我不希望用户能够输入或输入
< td>< input type =numberpattern =0 + \。[0 -9] * [1-9] [0-9] * $name =itemConsumption/>< / td>
- -1.0(负值)
- 字符串值和任何字符
- 1.0(十进制值)
- 无范围限制
我只想接受正数整数
求解
不需要正则表达式,我不知道这个: 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.0 (Negative values)
- String Values and any character
- 1.0 (Decimal Values)
- 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屋!