所以我试图让我的表单只在填写完所有必需元素后显示“阅读术语”按钮。我遇到了this以获取所需的元素,但现在当我尝试获取元素的值时,他们会在Chrome开发者工具中返回未定义的元素。
// Show Terms Button only if all required elements are filled.
let termsButton = document.getElementById("termsButton");
let allRequired = document.getElementById("contactForm").querySelectorAll("[required]");
const checkForRequiredDone = () =>{
if (allRequired.value != undefined && allRequired.value != "" && allRequired.value != null){
termsButton.style.display = "block";
}else{
termsButton.style.display = "none;"
}
}
由于我正在测试未定义,即使所有必需元素都已填满,按钮仍然显示。
此外,它位于表单元素的onchange
属性上。
而且我也有jQuery,但我认为这在JS中会更容易......