如何获得字段的“真实”值<input type="number">
?
我有一个input
盒子,我使用的是较新的 HTML5 输入类型number
:
<input id="edQuantity" type="number">
这在 Chrome 29 中主要受支持:
我现在需要的是能够读取用户在输入框中输入的“原始”值。如果用户输入了一个数字:
然后edQuantity.value = 4
,一切都很好。
但是如果用户输入无效文本,我想将输入框着色为红色:
不幸的是,对于type="number"
输入框,如果文本框中的值不是数字,则value
返回一个空字符串:
edQuantity.value = "" (String);
(至少在 Chrome 29 中)
如何获得控件的“原始”值<input type="number">
?
我尝试查看 Chrome 的输入框其他属性列表:
我没有看到任何类似于实际输入的内容。
我也找不到一种方法来判断盒子是否“为空”。也许我可以推断:
value isEmpty Conclusion
============= ============= ================
"4" false valid number
"" true empty box; not a problem
"" false invalid text; color it red
注意:横线之后的所有内容都可以忽略;这只是证明问题的填充物。另外:不要将示例与问题混淆。人们可能要回答这个问题的原因其他比着色盒红(一个例子:将文本转换"four"
成拉丁"4"
onblur事件中的符号)
如何获得控件的“原始”值<input type="number">
?