【发布时间】:2013-12-01 20:27:15
【问题描述】:
我正在为带有输入框的移动 Web 应用程序创建一个表单,要求输入数字,所以我使用 input type="number" 进行验证,它运行良好。我还根据框中的输入改变行为。我需要隐藏div,直到用户在框中输入文本。当他们从框中删除所有文本时,再次隐藏div。这很容易做到——检测输入上的keyup 以及它的value 是否为空字符串。当用户输入不是有效数字的文本(可能,至少使用 iOS 键盘)时,就会出现问题。不幸的是,当输入的文本不是有效数字时,输入框的value 是一个空字符串。所以我的代码在我仍然需要它可见时隐藏了div,因为它认为输入框中没有value。
如何将实际的value 存储在数字输入类型中,以便进行测试? (我需要将其保留为数字输入类型,以便出现正确的键盘。)谢谢!
这是我的sn-p代码:
$('input.deletable').keyup(function() {
console.log($(document.activeElement).val()); //returns empty string if input is "?)&" for example
if ($(document.activeElement).val() != '')
$('#myDiv').css('display', 'block');
else
$('#myDiv').css('display', 'none');
});
【问题讨论】:
-
空字符串真的是“实际值”。
标签: javascript jquery html input numbers