无线电类型不遵循'required'元素



我只有一个无线电类型要接受,但我不明白为什么它不工作?

<div class="radio">
<input type="radio" name="radioTOS" required><p>Accept</p> 
</div>

脚本:

const radio = document.querySelector(".radioTOS");
payment.addEventListener("submit", (e) => {
e.preventDefault();
if (radio.checked == null) {
confirmBtn.style.display = 'none';
checkout.innerHTML = 'Booked!'
}else{
console.log("no");
}
})

尝试使用const radio = document.querySelector("[name=radioTOS]");

您所做的是寻找具有radioTOS类的元素,但是在提供的代码片段中没有这样的类。希望这对你有帮助!

querySelector()方法返回document中与指定选择器匹配的第一个元素。如果没有找到匹配,则返回null。

至于你的代码-

name是一个非class属性。

如果你想访问的输入类型是name,然后是[name=radioTOS]

const radio = document.querySelector("input[name=radioTOS]");
payment.addEventListener("submit", function(e) {
e.preventDefault();
if (radio.checked === null) {
confirmBtn.style.display = 'none';
checkout.innerHTML = 'Booked!';
}else{
console.log("no");
}
});