由于JQuery功能,单选按钮默认选中不起作用

时间:2015-05-07 20:31:29

标签: javascript jquery html checkbox radio-button

我有一个以下列方式绑定到复选框的单选按钮列表。

1)选中复选框后,单选按钮被启用并检查默认按钮(例如值= 1)(三个中只能选择一个单选按钮)

2)取消选中该复选框后,将禁用单选​​按钮并删除其选择属性。

我面临的问题是,由于以下HTML和Jquery代码,页面加载(值= 1)上的单选按钮的默认选择不起作用。我无法识别错误。有人可以帮忙吗?



$('#mailcheck').change(function() {
  $('input[name="freq"]').prop('disabled', !this.checked);
  $('input[name="freq"]').removeAttr('checked');
}).change();

<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<label id="notcheck">
  <input type="checkbox" id="mailcheck" checked="checked">I want to receive an email notification of ads uploaded on my college marketplace
</label>
<br>

<ul>
  <li>
    <label>
      <input type="radio" name="freq" value="1" id="freqradio" checked="checked">Daily</label>
  </li>
  <li>
    <label>
      <input type="radio" name="freq" value="3" id="freqradio">Every 3 days</label>
  </li>
  <li>
    <label>
      <input type="radio" name="freq" value="7" id="freqradio">Weekly</label>
  </li>
</ul>
&#13;
&#13;
&#13;

1 个答案:

答案 0 :(得分:5)

这是一个粗略的工作版本:

&#13;
&#13;
$('#mailcheck').change(function(){
    if($(this).is(':checked')) {
        $('input[name="freq"]').prop('disabled', false).first().prop('checked', true);
    } else {
        $('input[name="freq"]').prop('disabled', true).prop('checked', false);
    }
})
&#13;
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js"></script>
<label id="notcheck">
 <input type="checkbox" id="mailcheck" checked="checked" >I want to receive an email notification of ads uploaded on my college marketplace
</label><br>

  <ul>
   <li><label><input type="radio" name="freq" value="1" id="freqradio1" checked="checked">Daily</label></li>
   <li><label><input type="radio" name="freq" value="3" id="freqradio2">Every 3 days</label></li>
   <li><label><input type="radio" name="freq" value="7" id="freqradio3">Weekly</label></li>
  </ul>
&#13;
&#13;
&#13;

P.S。 ids必须具有唯一值