具有多个数组名称属性验证的Html输入广播失败

时间:2017-10-04 01:52:44

标签: jquery html input radio-button radiobuttonlist

我有以下单选按钮

<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启用check属性为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验证没有验证。它仍然显示该字段是必需的。

注意:我注意到检查的属性正在显示,但是当我查看它时,它实际上并不在页面上显示。

1 个答案:

答案 0 :(得分:0)

尝试在.change()功能后添加.attr()