使用jquery检查Bootstrap set单选按钮

时间:2015-01-23 07:10:16

标签: javascript jquery html twitter-bootstrap

我的html代码中有单选按钮。 我想通过jquery

根据输入值更改状态

这是我的Html

<div class="col-md-2 col-xs-offset-1">
 <div class="radio">
  <label>
    <input type="radio" name="rdo_pkdrop" value="0" id="rdo_pick">
     Pick-up Time
   </label>
 </div>
 <div class="radio">
  <label>
   <input type="radio" name="rdo_pkdrop" id="rdo_drop" value="1">
    Drop Time
   </label>
 </div>
</div>

jQuery是

if(qs_trip_type == 0){
   $('#rdo_pick').prop('checked',true); 
}else{
   $('#rdo_pick').prop('checked',true); 
}

但这没有效果 我也尝试过   $('#rdo_pick').prop('checked','checked');

$('#rdo_pick').attr('checked','true'); 
  $('#rdo_pick').addClass('checked');

9 个答案:

答案 0 :(得分:10)

这是我能找到的唯一方式。虽然有点不优雅,但确实有效。

if(qs_trip_type == 0){
  $('#rdo_pick').click(); 
}else{
  $('#rdo_drop').click(); 
}

答案 1 :(得分:4)

bootstrap的问题在于您通过将active类添加到输入的相应标签来设置选中的单选按钮。它看起来像这样:

<label class="btn btn-default active">    <!-- Note the class 'active' here -->
    <input type="radio" name="myRadio" value="value1" checked="checked"/>Value 1
</label>
<!-- ... -->

要使用jQuery检查单选按钮,您可以先使用jQuery Selector选择输入字段,然后将该类添加到父级:

var $myRadioInput = $(...);
$myRadioInput.parent('.btn').addClass('active');

请勿忘记使用jQuery active删除以前选定标签上的课程removeClass('active'),以便首先取消选中它们。

我也喜欢在输入上设置checked属性以使其具有正确的状态:

$myRadioInput.prop('checked', true);

请注意,checked="checked"属性仅是加载页面时输入作为检查输入的初始状态。它不会随jQuery .prop()方法而改变,因为它是一个属性,与实际的checked property不同。这在jQuery Docs中有详细描述。

答案 2 :(得分:1)

您的代码中有一个拼写错误ekse替换为else

   if(qs_trip_type == 0){
       $('#rdo_pick').prop('checked',true); 
    }else{
       $('#rdo_pick').prop('checked',true); 
    }

答案 3 :(得分:1)

if(qs_trip_type == 0){
   $('#rdo_pick').prop('checked',true); 
}else{ //not ekse
   $('#rdo_pick').prop('checked',true); 
}

这是jsfidlle http://jsfiddle.net/urLh9qnh/

答案 4 :(得分:1)

试试这个

if(qs_trip_type == 0){
   $('#rdo_pick').prop('checked',true); 
}else{
   $('#rdo_drop').prop('checked',true); 
}

答案 5 :(得分:1)

我试过,这段代码适用于bootstrap无线电。

if(qs_trip_type == 0){
   $('#rdo_pick').prop('checked',true).click();
}else{ //not ekse
   $('#rdo_pick').prop('checked',true).click();
}

答案 6 :(得分:0)

试试这个: 设置收音机的值后,请添加此代码

  $this->db->select("seller.name");
  $this->db->from("seller");
  $this->db->where("id",'29,25');
  $q = $this->db->get();
  $res = $q->row_array();
  echo $res['name'] ;

答案 7 :(得分:0)

单线

假设元素idrdo_pick。这是自举程序特有的功能,除了将无线电输入设置为选中状态之外,自举程序还需要独立管理视觉元素。

$("#rdo_pick").prop('checked', true).parent('.btn').addClass('active').siblings('.btn').removeClass('active');

说明

您的单选输入元素的jQuery选择器:

$("#rdo_pick")

这会将输入元素设置为选中状态,并设置表单输入的内部状态。

.prop('checked', true)

从现在开始,纯粹是装饰性的,因此更改可以在视觉上反映出来。将单选标签设置为活动状态:

.parent('.btn').addClass('active')

现在将其他标签设置为无效。这些是上面返回的标签中的兄弟姐妹元素。

.siblings('.btn').removeClass('active')

答案 8 :(得分:0)

这里是一种解决方案:

$('#rdo_pick').iCheck('check');