下拉和单选按钮无法验证

时间:2015-05-12 18:49:59

标签: javascript forms validation if-statement

这是指向工作表单的链接:http://jsbin.com/vuroyaparo/2/

我正在尝试点击三个按钮中的任何一个来验证表格(radiobutton,4估计每日使用按钮,保存产品)

a)如果用户点击任何按钮,则会显示一条警告,显示所有空白字段,并根据输入不断更新错误。

当我在代码中输入函数returnVal时,我在控制台中得到了错误 未捕获的TypeError:无法读取属性'catDropdown'的null

它在开始时运行我的功能,但即使是第一次下拉也不会验证。 catDropdown是一个标记HTML select元素的变量。

对于复选框相同的问题,所以我尝试编写2个选项(在js文件的末尾注释)

我错过了什么。 (大或小)=啊啊;

有人可以帮助我吗?我第一次尝试验证。我正在寻找JS解决方案,因为我不知道Jquery。

感谢

1 个答案:

答案 0 :(得分:2)

错误未捕获的TypeError:无法读取属性'catDropdown'为null ,因为您调用了var energyForm = document.getElementById("energyForm");,但您的HTML中没有ID ='energyForm'的元素。您可以为表单提供ID和引用,或者调用document.getElementsByName("energyForm")[0]

另请注意第if(energyForm.catDropdown.selectedIndex = 0){行 将值0赋给energyForm.catDropdown.selectedIndex,而不是将其值与0进行比较。除此之外,您可能只想要这一行:if(catDropdown.selectedIndex == 0){

进一步注意,行var catDropdown = document.getElementById("dd1");也将返回null,因为HTML中没有ID ='dd1'的元素。 ID ='ddl'和name ='dd1'的选项可以使用 var catDropdown = document.getElementById("ddl"); var catDropdown = document.getElementById("dd1")[0];

获得