所以我试着编写javaScript来检查我的表单 . 我有六个无线电类型输入,其中一个 has 要检查 . 无线电按钮放置在两排三个无线电输入中 . 一行的名称为'inschrijving1',另一行的另外三个输入的名称均为'inschrijving2' . 这是我用来检查表单的代码,但是使用这段代码它总是返回false并始终发出警报 .
if(!document.getElementsByName("inschrijving1").checked || !document.getElementsByName("inschrijving2").checked)
{
alert("Selecteer een dagdeel voor de inschrijving");
return false;
}
谁能明白为什么会这样?如果没有检查六个无线电输入,我只需要它返回false并发出警报 .
1 回答
因为
getElementsByName()
返回元素的集合/ nodeList,它没有集合checked
属性 . 为此,您需要显式迭代返回的每个元素并单独检查它们 .假设你只有一个元素
name
:或者,在兼容的浏览器中,每个浏览器中有多个:
document.querySelector()
仅返回满足所提供选择器的第一个匹配(使用CSS选择器语法)元素 .参考文献:
document.getElementsByName() .
document.querySelector() .