我正在使用自定义单选按钮。还添加了必需的属性。
必需正在运行但ERROR未显示....
没有选择收音机就不会提交表格....
但是
"请选择其中一个选项"
错误未显示。
代码是:
<form>
<div class="form-field-label">Change In Weight :</div>
<div class="form-field-input">
<input type="radio" name="change_in_weight" id="change_in_weight1" required value="Maintained" class='radiobutton'><label for="change_in_weight1" class='radiobutton-label'>Maintained</label><br>
<input type="radio" name="change_in_weight" id="change_in_weight2" value="Increasing abnormally since last one year" class='radiobutton'><label for="change_in_weight2" class='radiobutton-label'>Increasing abnormally since last one year</label><br>
<input type="radio" name="change_in_weight" id="change_in_weight3" value="Decreasing abnormally since last one year" class='radiobutton'><label for="change_in_weight3" class='radiobutton-label'>Decreasing abnormally since last one year</label><br>
</div>
<br>
<input type="submit" value="send">
</form>
CSS:
.radiobutton-label {
display: inline-block;
cursor: pointer;
position: relative;
padding-left: 25px;
margin-right: 15px;
font-size: 15px;
}
input[type="radio"] {
display:none;
margin: 10px;
}
.radiobutton-label:before {
content:"";
display: inline-block;
width: 24px;
height: 24px;
margin-right: 10px;
position: absolute;
left: 0;
bottom: 1px;
}
input[type=radio] + label:before {
background: url('http://drdilipgadgil.com/img/vlad.png') 2px 4px no-repeat;
}
input[type=radio]:checked + label:before {
background: url('http://drdilipgadgil.com/img/vlad.png') 2px -18px no-repeat;
}
:required:focus {
box-shadow: 0 0 6px rgba(255,0,0,1);
}
这是 JSFIDDLE
答案 0 :(得分:1)
对于自定义单选按钮,您必须单独处理错误情况。错误未显示,因为单选按钮被隐藏。如果您提供&#39; display:block&#39;对于单选按钮,您可以在提交后看到错误。所以你可以选择两个解决方案。
保留默认单选按钮
OR
通过JS处理错误案例,并显示自定义消息。
答案 1 :(得分:0)
当单击按钮并且单选按钮为空(没有选中)时,只需尝试在javascript中创建一些函数,只显示任何div或任何你想要的错误。 (例如,只使用警报来简单地测试它)
答案 2 :(得分:0)
我知道我来晚了,但是由于我遇到了同样的问题,并且已经在该线程中查找并it绊绊,所以我想说这是一条路。
1-不要隐藏实际的单选按钮(不要设置display :hidden;
2-将其透明度设为0,并将其位置设为绝对
----对我来说很好
opacity: 0;
position: absolute;