【发布时间】:2018-10-23 22:21:04
【问题描述】:
我正在考虑用户可以输入数字类型 <input> 并使用 jquery 验证输入的所有可能性。
在输入字段中,我只输入了一个简单的点“。”
if($("#timetaken").val() == "")
这个 if 语句执行时响应说它是空的。有一个“。”点在其中,从逻辑上讲,它应该跳过这个并执行告诉我们它不为空的else。
我还使用输入“1”进行了测试。这是不完整的
console.log($("#timetaken").val().toString().indexOf("."));
它返回-1,这意味着'。'不存在并被忽略。
问题是有没有办法在数字类型的<input> 标记中验证这两个输入?
谢谢。
【问题讨论】:
-
我可能建议在事件处理程序中运行
debugger;并查看e.target.validity属性。那里似乎有一些属性可以为您提供有关用户输入内容的一些信息,而无需实际告诉您他们输入的内容。 -
我认为正则表达式对我来说可能是一个更好的解决方案。早该想到的。
-
我认为您应该在问题中包含您的确切 HTML — 是
<input type="number" ...>(我认为是,基于您的“类型编号”声明)还是<input type="text" ...>? 根据你写的,我认为我的假设是正确的,但不要让我做假设;明确。
标签: javascript jquery html validation