验证每个单选题是否都已经选择,其中每个input中不带name值,直接遍历input[type="radio"]验证
<!DOCTYPE html>
<html lang="en">
<head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>Document</title> <script src="https://code.jquery.com/jquery-3.6.0.min.js"></script>
</head>
<body> <div class="formdiv"> <form class="layui-form" action=""> <div class="layui-form-item"> <div class="tt">1 您是否经常按医生的指导服用药物? <span style="color:red">*</span></div> <div> <label><input type="radio" value="A"> A. 是</label> <label><input type="radio" value="B"> B. 否</label> </div> </div> <div class="layui-form-item"> <div class="tt">2 在过去的一周中,您是否曾经忘记过服用药物? <span style="color:red">*</span></div> <div> <label><input type="radio" value="A"> A. 是</label> <label><input type="radio" value="B"> B. 否</label> </div> </div> <div class="layui-form-item"> <div class="tt">3 如果您觉得不太舒服,您是否会省略服药? <span style="color:red">*</span></div> <div> <label><input type="radio" value="A"> A. 是</label> <label><input type="radio" value="B"> B. 否</label> </div> </div> <div style="margin:0.5rem auto 1rem auto;box-sizing: border-box;padding: 0rem 0.5rem;"> <button type="submit" class="layui-btn sub">提交问卷</button> </div> </form> </div> <script> $(document).ready(function() { $('.layui-form').on('submit', function(e) { e.preventDefault(); // 阻止表单的默认提交行为 // 检查每个单选按钮组是否有一个被选中 var isValid = true; $('input[type="radio"]').each(function() { if (!$(this).closest('.layui-form-item').find('input[type="radio"]:checked').length) { isValid = false; alert('请回答所有问题!'); return false; // 跳出循环 } }); if (isValid) { // 如果所有验证都通过,则提交表单(这里只是模拟,你可以使用ajax提交或其他方式) alert('表单提交成功!'); // $(this).submit(); // 取消注释以实际提交表单 } }); }); </script>
</body>
</html>