我有一个单选按钮列表,其中只能检查一个。我想从所选单选按钮中检索值。我似乎没有在返回的警报中获得任何文本。
请注意,此HTML是自动生成的,因此我无法对其进行编辑。因此无法增加价值。
<form class="leaflet-control-layers-list">
<div class="leaflet-control-layers-base">
<label>
<input class="leaflet-control-layers-selector" type="radio" checked="checked" name="leaflet-base-layers"></input>
<span>
Gemeenten
</span>
</label>
<label>
<input class="leaflet-control-layers-selector" type="radio" name="leaflet-base-layers"></input>
<span>
Wijken
</span>
</label>
<label>
<input class="leaflet-control-layers-selector" type="radio" name="leaflet-base-layers"></input>
<span>
Buurten
</span>
</label>
</div>
</form>
这是我使用的jQuery脚本:
radioButtonText = $('input[name=leaflet-base-layers].leaflet-control-layers-selector:checked').html();
alert(radioButtonText);
有人知道如何根据选择的单选按钮返回“Gemeenten”,“Buurten”或“Wijken”文本吗?
答案 0 :(得分:1)
在输入广播
中设置值属性<input value="Gemeenten" class="leaflet-control-layers-selector" type="radio" checked="checked" name="leaflet-base-layers">
使用.val()方法
获取无线电输入值radioButtonText = $('input[name=leaflet-base-layers].leaflet-control-layers-selector:checked').val();
alert(radioButtonText);
如果你需要span html内容:
radioButtonText = $('input[name=leaflet-base-layers].leaflet-control-layers-selector:checked');
var label_value = radioButtonText.closest('label').find('span').html();
alert(label_value);
答案 1 :(得分:1)
获取点击的单选按钮的下一个html。
$(document).ready(function(){
$("input[type=radio]").click(function(e) {
var inputs = $('input[type=radio]');
alert($(this).next().html());
});
});
答案 2 :(得分:1)
*)您的选择器缺少项目名称旁边的引号。
*)你可能不需要班级&#34; .leaflet-control-layers-selector&#34;如果您使用按钮名称。
*)您不想从输入中获取.html(),您希望它来自以下范围,您可以使用.next()。
应该是:
radioButtonText = $('input[name="leaflet-base-layers"]:checked').next().html();
alert(radioButtonText);