HTML:
<span style="display:inline-block;width:250px;">
<div class="radio" id="uniform-rdo">
<span>
<input id="rdo" type="radio" name="lossDes" value="rdo" onclick="LossDes();" style="opacity:0; ">
</span>
</div>
<label for="rdo">Insured drove into water.</label>
</span>
jQuery的:
var lossOptionsVal = $('input[name=lossDes]:checked').next('label').text();
现在我想在检查radiobutton
时获取标签内的文本答案 0 :(得分:1)
我认为你在寻找
$("#rdo").click(function() {
alert($(this).parents("div").next("label").text());
});
请注意,我正在使用jQuery click
方法在输入上绑定OnClick
事件,而不是在html中定义。
答案 1 :(得分:0)
尝试
这里根据你的html标签元素是div元素旁边所以你需要去两级,即需要移动到父级的父级,这是div,所以脚本是............ ..
var lossOptionsVal = $('input[name=lossDes]:checked')
.parent().parent().next('label').text();
答案 2 :(得分:0)
这是一种与结构无关,性能轻松的方法:
$('body')
.delegate('input[type="radio"]', 'click', function() {
var label_text = $('label[for="' + $(this).attr('id') + '"]').text();
// do whatever you need
});
答案 3 :(得分:0)
另一种解决方案
$("input[name=lossDes]").click(function() {
alert($(this).parents().eq(1).next().text());
});
答案 4 :(得分:0)
您也可以这样做:
$('input:[type=radio]').click(function(){
var lossOptionsVal = $('label:[for='+$(this).attr('id')+']').text();
alert(lossOptionsVal);
});