不允许输入其他譬如十六进制的数,譬如 1e4, 1e100 等,我用 parseInt, isNaN, 正则貌似都无法实现
1
sunchen Sep 23, 2017
正则 \d+ 不行?
|
2
lslqtz Sep 23, 2017 via iPhone
判断是不是太大不就好了…
有时十进制和十六进制会冲突吧 |
3
geelaw Sep 23, 2017 via iPhone
|
4
xcatliu Sep 23, 2017 via iPhone 1e4 1e100 一般是指科学计数法吧
|
5
bkmi Sep 23, 2017 via Android 兄台,你列的那叫科学记数法,16 进制 0x 开头,不妨把你碰到的问题说出来
|
6
TigerK Sep 23, 2017
直接用整数啊
|
9
gap OP @bkmi
看来基础不牢...是这样的, 我有个 reduce 求和的方法,遇到 1e4 类似的输入就会出问题...还望指点 function total(target = [{ amount: '100' }, { amount: '200'}]) { return target.reduce((total, obj) => total + obj.amount, 0) } total() // 0100200 function total(target = [{ amount: '100' }, { amount: '200'}]) { return target.reduce((total, obj) => total + parseInt(obj.amount), 0) } total() // 300 total([{ amount: '1e4' }]) // 1 |
10
annielong Sep 23, 2017
用 j 前台判断吧,最基本的的就是不允许 0-9 以外的键值输入
|
12
schezukNewTos Sep 23, 2017 |
13
schezukNewTos Sep 23, 2017 *typo
搜索 javascript Scientific Notation Number("4.874915326E7") |
14
yhxx Sep 23, 2017
那不是进制
是科学计数法 |
15
Sapp Sep 23, 2017 via Android
你直接不让输入数字以外的不就行了吗?
|
16
noe132 Sep 23, 2017 监听 keypress,遇到非 0-9 e.preventDefault()
|
17
gap OP 感谢大家!太弱鸡了,把科学计数法当成十六进制了...
|
19
dong3580 Sep 23, 2017 via Android
正则啊😂
|
20
SingeeKing PRO 正则 \d+ 不行?
|
21
zhx1991 Sep 23, 2017
001 算不算合法输入?
|
22
u2386 Sep 23, 2017 via iPhone
怎么判断 1 是什么进制。
让用户必须输入 9 不准输入字母... |
23
br00k Sep 24, 2017
输入框 type 使用 number 不就可以了么。
|
24
shengchao Sep 24, 2017
onkeyup="this.value=this.value.replace(/\D/g,'')"
给 input 添加这个元素,完美 |
25
shengchao Sep 24, 2017
是属性,说错了
|