2016-11-16 82 views
0

我试图检索ajax的值,它的工作,但我试图显示输入:无线​​电如果条件为真,那么它将被检查,但没有改变我的脚本。 因此,如果值状态= 1,则输入:radio将被检查,如果值status = 0,则不检查它。问题检查/取消选中基于条件的单选按钮使用jQuery

我的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'); 
    } 
}); 
+1

'.VAL(data.status)'将其值设置为传递的值,来获得该值使用'.val()' – Tushar

+0

你也试图只测试选中的值吗?如果你给出了更好的解释,以确定你想要检查什么 – charlietfl

+0

@Tushar,感谢它是真实的标签,但没有改变 –

回答

2

取出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'); 
    } 
}); 
+0

谢谢@aruna,为检查我已经找到答案,但如何标签也改变? –

+0

@irwandwiyanto你想展示哪个标签? – Aruna

+0

这个例子[示例jsfiddle](https://jsfiddle.net/irwandwiyanto/uttvjypt/)如果status = 1'

0

你可以添加一个进一步选择这样的,

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

,以防止标签也得到改变