javascript - 从单选按钮中选择特定日期时启用禁用设置单选按钮

标签 javascript jquery

我正在尝试根据另一个单选按钮启用和禁用单选按钮。当用户单击该日期的特定日期单选按钮时隙时将被启用。例如,当用户单击日期 16-03-2019 时,应启用 16-03-2019 上午 8:30 和下午 1:30 的时间段。 17-03-2019 的其他时间单选按钮将被禁用。

Screenshot

代码如下:

<tr><td><input class="slot" type="radio" name="date" required="" value="16-03-2019">16-03-2019</td>
<td><input class="disabled" type="radio" name="time" value="8:30 am">8:30am</td>
<td><input class="disabled" type="radio" name="time" value="1:30 am">1:30pm</td>


</tr> 
 <tr><td><input type="radio" class="slot" name="date" required="" value="17-03-2019">17-03-2019</td>
<td><input class="disabled" type="radio" name="time" value="8:30 am">8:30am</td>



</tr> 
<script type="text/javascript">
    $(document).ready(function() {
        $('.slot').click(function() {
            $('.disabled').prop('checked', false);
            $('.disabled').attr('disabled',true);
            var id = $(this).attr('id');
            id = id.split('_');
            id = id[1];
            $('#time_1_'+id).attr('disabled',false);
            $('#time_2_'+id).attr('disabled',false);
        });
    });
</script>

最佳答案

您可以先将所有单选按钮设置为禁用,然后仅从最近的tr 单选按钮中删除禁用 属性。

尝试以下方式:

$(document).ready(function() {
  $('.disabled').attr('disabled', 'disabled');
    $('.slot').click(function() {
        $('.disabled').attr('disabled', 'disabled');
        $(this).closest('tr').find('.disabled').each(function(i, r){
          $(r).removeAttr('disabled');
        });
    });
});
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<table>
  <tr>
    <td><input class="slot" type="radio" name="date" required="" value="16-03-2019">16-03-2019</td>
    <td><input class="disabled" type="radio" name="time" value="8:30 am">8:30am</td>
    <td><input class="disabled" type="radio" name="time" value="1:30 am">1:30pm</td>
  </tr> 
  <tr>
    <td><input type="radio" class="slot" name="date" required="" value="17-03-2019">17-03-2019</td>
    <td><input class="disabled" type="radio" name="time" value="8:30 am">8:30am</td>
  </tr>
</table>

关于javascript - 从单选按钮中选择特定日期时启用禁用设置单选按钮,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55015933/

相关文章:

jquery - 调整窗口大小时自动调整文本(字体大小)?

javascript - 同一窗口/选项卡上的 Mailchimp 确认页面

javascript - 带有类别的 Django 选项字段

javascript - jquery 根本不触发

javascript - 具有相同功能的多能ID选择器

jquery - Angularjs ng-click : how to get `this` data?

javascript - Electron 上的 react 路由器无法改变历史

javascript - 不使用 class 关键字扩展数组

Javascript根据答案输出不同的消息

javascript - 在ready函数中获取dom元素的值