在文档就绪时,我正在设置一个单选按钮进行检查,我希望用户看到按钮突出显示/变色。但是在视图中没有显示任何内容。 这是我的HTML。在视图或HTML中没有显示任何内容。它与所有其他单选按钮的颜色相同。
<div class="btn-group" data-toggle="buttons" id="SpaceType">
<label class="btn btn-primary">
<input type="radio" name="typeoptions" id="0" autocomplete="off"> House
</label>
<label class="btn btn-primary">
<input type="radio" name="typeoptions" id="1" autocomplete="off"> Apartment
</label>
<label class="btn btn-primary">
<input type="radio" name="typeoptions" id="2" autocomplete="off"> Studio
</label>
<label class="btn btn-primary">
<input type="radio" name="typeoptions" id="3" autocomplete="off"> Other
</label>
</div>
这是我的jquery。
if ($("#YogaSpaceType").val() != "") {
var t = $("#YogaSpaceType").val();
var element = '#SpaceType.' + t;
//$(element).prop('checked', true);
$('input:radio[id=SpaceType][id=0]').prop('checked', true);
}
我尝试了两行,包括被注释掉的那一行。 如果我在下面的元素中添加'checked',则HTML会将其显示为已选中,但我在视图中看不到任何内容,但它仍然未选中。
<input type="radio" name="typeoptions" id="0" autocomplete="off" checked> House
答案 0 :(得分:0)
您希望将此更改为更像http://www.mkyong.com/jquery/how-to-select-a-radio-button-with-jquery/。这里的问题是你试图在jquery中使用input关键字,但你的html是按钮组。
从该页面,HTML是:
<input type="radio" name="sex" value="Male">Male</input>
<input type="radio" name="sex" value="Female">Female</input>
<input type="radio" name="sex" value="Unknown">Unknown</input>
然后JS是$('input:radio[name=sex]')[2].checked = true;
如果有必要将它们保留为按钮组,则需要将JS行更改为更像$("#0").prop('checked', true)
。您也可以将div ID链接在一起,如下所示:$(“#SpaceType#0”)。prop('checked',true);
答案 1 :(得分:0)
这有点令人困惑,但是类属性'active'需要添加到标签中。不是checked属性。这有点令人困惑但现在明白了。
答案 2 :(得分:-1)
$('input[type="radio"][id="0"]').prop('checked', true)
id的多重值检查将以0个元素结束。