使用jQuery根据条件选择/取消选中单选按钮的问题

Issue with check/uncheck Radio button based on condition using jQuery

本文关键字:单选按钮 问题 取消 jQuery 条件 选择 使用      更新时间:2023-09-26

我试图检索ajax的值,它的工作,但我试图要显示输入:无线电如果条件为真,那么它将被检查,但在我的脚本没有变化。因此,如果值status = 1,则检查input: radio,如果值status = 0,则不检查。

我Html

<div class="col-md-6">
    <label for="status">Status</label>
    <div class="btn-group" data-toggle="buttons">
        <label class="btn btn-default btn-on btn-sm ">
        <input type="radio" value="0"  name="status" id="aktif" >Active</label>
        <label class="btn btn-default btn-off btn-sm active">
        <input type="radio" value="1" name="status" id="deaktif" >Deactive</label>  
    </div>
</div>  
我的ajax

$.ajax({
    url : "<?php echo site_url('edit')?>/" + id_user,
    type: "GET",
    dataType: "JSON",
    success: function(data) {
        $('[name="status"]').val(data.msg_activation);
        $('#edit').modal('show'); 
        if($('[name="status"]').val(data.status) === 1) {
            $('#aktif').prop('checked', true);
        }
    },
    error: function (jqXHR, errorThrown) {
        alert('Error ajax');
    }
}); 

删除if条件,并尝试如下,

$('#aktif').prop('checked', data.status === 1);

代码
$.ajax({
    url : "<?php echo site_url('edit')?>/" + id_user,
    type: "GET",
    dataType: "JSON",
    success: function(data) {
        $('[name="status"]').val(data.msg_activation);
        $('#edit').modal('show'); 
        $('div.btn-group label.btn').removeClass('btn-on btn-off');
        $('#aktif').prop('checked', data.status === 1);
        $('#aktif').parent().addClass(data.status === 1 ? 'btn-on' ? 'btn-off');
        $('#deaktif').prop('checked', data.status === 0);
        $('#deaktif').parent().addClass(data.status === 0 ? 'btn-on' ? 'btn-off');
    },
    error: function (jqXHR, errorThrown) {
        alert('Error ajax');
    }
}); 

你可以像这样添加一个选择器,

$('input[name="status"]').val(data.msg_activation);

防止标签也被改变