我想使用type =“number”的表单输入并且只允许输入数字。使用输入type =“number”区分NaN输入和空输入
<input type="number" class="form-control fc-input"/>
我没有提交按钮,而是在输入失去焦点后检查值。但是,当您使用type =“number”并输入非数字时,输入的valueAsNumber
和value
属性将毫无用处(分别为NaN和“”)。问题在于我想区分用户输入空字符串(“”)和用户输入非数字值(例如123abc)。当输入为空时,我想执行函数a,如果它只是一个非数字,我想执行函数b(否则执行c)。
是否有一种很好的方法来区分NaN输入和像这样的空(“”)输入?
也许我误解你的问题,但为什么不'如果(价值=== NAN)'和'如果(价值===“”)' ? – 2014-11-03 19:58:44
关于NaN的有趣之处在于它不等于它本身...... NaN === NaN // false' – 2014-11-03 20:00:11
@Jordan:无论是否(值=== NaN)'总是'false' “价值”是什么。 'NaN'没有'===',包括'NaN'。 – 2014-11-03 20:04:06