【发布时间】:2018-03-15 07:35:55
【问题描述】:
我有以下单选按钮
<div class="col-md-12 clearfix multi-wrap">
<div class="radio-inline"><label for="">Academics</label></div>
<div class="radio-inline">
<label class="radio-label" style="background: rgb(221, 221, 221);">1
<input type="radio" name="criteria_order[academics][]" value="1" required="" aria-required="true" class="text-danger">
</label>
</div>
<div class="radio-inline">
<label class="radio-label" style="background: rgb(221, 221, 221);">2
<input type="radio" name="criteria_order[academics][]" value="2" required="" aria-required="true" class="text-danger">
</label>
</div>
<div class="radio-inline">
<label class="radio-label" style="background: rgb(221, 221, 221);">3
<input type="radio" name="criteria_order[academics][]" value="3" required="" aria-required="true" class="text-danger">
</label>
</div>
<div class="radio-inline">
<label class="radio-label" style="background: rgb(221, 221, 221);">4
<input type="radio" name="criteria_order[academics][]" value="4" required="" aria-required="true" class="text-danger">
</label>
</div>
<div class="radio-inline">
<label class="radio-label" style="background: rgb(221, 221, 221);">5
<input type="radio" name="criteria_order[academics][]" value="5" required="" aria-required="true" class="text-danger">
</label>
</div>
<div class="radio-inline">
<label class="radio-label" style="background: rgb(221, 221, 221);">6
<input type="radio" name="criteria_order[academics][]" value="6" required="" aria-required="true" class="text-danger">
</label>
</div>
<div class="radio-inline">
<label class="radio-label" style="background: rgb(221, 221, 221);">7
<input type="radio" name="criteria_order[academics][]" value="7" required="" aria-required="true" class="text-danger">
</label>
</div>
</div>
点击后,我通过 JQuery 将选中的属性设置为 true,如下所示
$('.radio-label').click(function(){
$(this).closest('.multi-wrap').find('.radio-label').removeClass('active');
$(this).closest('.multi-wrap').find('.radio-label input[type="radio"]').attr('checked',false);
$(this).addClass('active');
$(this).find('input[type="radio"]').attr('checked',true);
});
JQuery 之后的 HTML 如下:
<input type="radio" name="criteria_order[academics][]" value="2" required="" aria-required="true" class="text-danger" checked="checked" aria-invalid="true">
JQuery 验证未验证。它仍然显示该字段是必需的。
注意:我注意到检查的属性出现了,但是当我查看它时它实际上在页面上不可见。
【问题讨论】:
-
你能把jQuery代码发给你吗?
-
编辑了我的问题。请立即查看
-
验证码在哪里
-
你为什么要从你的JS设置输入
.checked?这不是通过标准标签/输入元素点击行为自动发生的吗?话虽如此,如果您出于某种原因确实需要从 JS 设置它,请使用.prop(),而不是.attr(),您要更新当前属性值而不是属性。 -
我为了用户体验而隐藏了单选按钮。如果你看到我的 jquery 你就会明白。单击收音机标签时,我正在通过 JQuery 检查收音机。
标签: jquery html input radio-button radiobuttonlist