我试图提出一种由单选按钮组组成的表单,用户必须选择其中一个选项,如果不选择,则会显示自定义有效性消息。
所以逻辑是:
问题是,只有当所选选项是带有 onclick 事件的选项时,事情才会继续进行,如下所示。如果不是,则该消息将继续显示。
我尝试过处理 required、oninvalid 和 onclick 的问题,但没有成功。有任何想法吗?
谢谢!
<form>
<input type="radio" name="test" value="0" required oninvalid="this.setCustomValidity('Click me')" onclick="setCustomValidity('')">Zero<br>
<input type="radio" name="test" value="1" class="wrapper">One<br>
<input type="radio" name="test" value="2" class="wrapper">Two<br>
<input type="submit">
</form>
Run Code Online (Sandbox Code Playgroud)
小智 2
<form>
<input type="radio" id="test" name="test" value="0" oninvalid="this.setCustomValidity('Click me')" onclick="clearValidity();" required >Zero<br>
<input type="radio" name="test" value="1" onclick="clearValidity()" class="wrapper">One<br>
<input type="radio" name="test" value="2" onclick="clearValidity()" class="wrapper">Two<br>
<input type="submit">
</form>
<script>
function clearValidity()
{
document.getElementById('test').setCustomValidity('');
}
</script>
Run Code Online (Sandbox Code Playgroud)