2013-11-26 32 views
1

我有一些隐藏的单选按钮,当点击标签时选中,但在ie7似乎并没有选择收音机时,点击标签有什么想法为什么?jquery/css标签选择器不工作在ie7

jQuery('input[type="radio"]').on('change', function(){ 
      if (jQuery(this).val()=='2') { 
       jQuery("#user_type_3_wrapper label").removeClass(); 
       jQuery("#user_type_3_wrapper label i").hide(); 
       jQuery("#user_type_2_wrapper label i").show(); 
       jQuery("#user_type_2_wrapper label").addClass("active"); 
      } else { 
       jQuery("#user_type_2_wrapper label").removeClass(); 
       jQuery("#user_type_2_wrapper label i").hide(); 
       jQuery("#user_type_3_wrapper label i").show(); 
       jQuery("#user_type_3_wrapper label").addClass("active"); 
      } 

CSS

fieldset.account-type ul li input { position: absolute; left: -999999em; } 

HTML

<ul> 
    <li class="input" id="user_type_2_wrapper"> 
    <label> 
     <i class="icon icon-ok" style="display: none;"></i> 
     <input type="radio" value="2" name="user[role_ids][]" id="user_role_ids__2"> as a <b>Host</b><br><span>A Host is the person who wants to run events or tenders.</span> 
    </label> 
    </li> 
    <li class="input" id="user_type_3_wrapper"> 
    <label> 
     <i class="icon icon-ok" style="display: none;"></i> 
     <input type="radio" value="3" name="user[role_ids][]" id="user_role_ids__3"> as a <b>Participant</b><br><span>A Participant is someone who wants to take part in an event or tender process.</span> 
    </label> 
    </li> 
</ul> 

提前感谢!

+0

您需要添加HTML,以便我们可以看到标记。 – jammykam

+0

opps抱歉,现在让我添加 –

+1

您是否使用不支持IE 6-8的jQuery版本2.x? – Esko

回答

0

您正在使用label-elements有点不对,它们需要for-attribute,它包含它们所标记的单选按钮的ID。并且文本需要位于标签内部,如下所示:

<input type="radio" value="3" id="user_role_ids__3" /> 
    <label for="user_role_ids__3">as a <b>Participant</b></label> 
+0

哇我通常不会错过!因为它的全部在红宝石和我不是一个红宝石的家伙,所以没有发现它 - 谢谢!现在就来试试吧haha –

+0

是的,我很好,很抱歉 - 我错过了! –