我的文本框总是返回字段不是一个数字,即使它是。表单验证JavaScript数字总是返回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');
}
你没有选择任何东西,这个名字是无效的,因为它没有被引用,并且使用'document.forms'是一个非常糟糕的方式来获取一个ID为 – adeneo 2015-03-18 23:40:07
的元素。另外,你调用'value' * ** TWICE ***,这是真正的问题 – adeneo 2015-03-18 23:42:20
它应该是'如果(isNaN(field)){' – adeneo 2015-03-18 23:42:42