表单验证JavaScript编号总是返回false
Form Validation JavaScript number always return false
我的文本框总是返回一个字段,该字段不是数字,即使它是。
HTML
<form name = garysForm>
Number of adults: <input type="number" size="6" id="ofAdults" name="adultBox" min="0" max="50" required><br>
Number of children: <input type="number" size="6" id="ofChild" min="0" max="50" required><br>
Date:<input type="text" name="date" id="datepicker" required><br>
<Button type="button" onclick="BookingFare(); return false;">Calculate</button><br>
</form>
Javascript
var field = document.forms["garysForm"]["adultBox"].value;
if (isNaN(field.value)) {
alert('Please enter a valid number');
}
当您为字段赋值时,您正在调用field.value。
var field = document.forms["garysForm"]["adultBox"].value;
if (isNaN(field.value)) {
试试这个:
var field = document.forms["garysForm"]["adultBox"];
if (isNaN(field.value)) {
我使用.elements方法解决了这个问题。
var field = document.forms["garysForm"].elements["adultBox"].value;
然后,您需要考虑SPACE也被视为数字引用。所以我应用了以下逻辑。
var field = document.forms["garysForm"].elements["adultBox"].value;
console.log(field)
if (field=='') {
alert('Please enter a valid number');
}
else if (isNaN(field)) {
alert('Please enter a valid number');
}
else {
alert(field)
}
演示
*Jquery仅用于演示目的。
我希望你觉得这个答案有帮助。谢谢
您可以使用其id:获取成人盒子的值
var field = document.getElementById("ofAdults").value;
if (isNaN(field)) {
....
相关文章:
- Array.every返回false,而不是类型error
- Javascript If else 只返回 TRUE 或只返回 FALSE
- 为什么当我在数组上测试regex时,它会返回false
- 检查文本区域是否为空总是返回false
- PHP strtotime()为JavaScript日期字符串返回false
- onsubmit返回false,但submit仍然执行
- 这个代码会返回false吗
- Ajax向表单返回false
- 表单验证JavaScript编号总是返回false
- 使用!而in运算符在应该为true时返回false,为什么
- jQuery.is(':checked')总是返回false
- Javascript 下划线每个总是返回 false
- 提交返回 false 总是在 jquery 中
- 为什么 1.2 == true 返回 false 如果布尔值 (1.2) 实际上是真的
- 如果循环中至少有一个元素返回 false,如何将变量设置为 false
- 基本JavaScript不断返回false
- 布尔对象上的逻辑 NOT 在 Javascript 中总是返回 false
- jquery focusin没有'调用.focus()并返回false;时无效;
- Ajax-执行成功前返回false
- jQuery JSON flickr提要返回false不工作