在JQuery中获取选定单选按钮的文本

15

在Jquery中,我如何获取所选单选按钮的文本(而不是值),如下所示

 <label> <input type="radio" name="Surv_Q1" value="20">5 - Excellent</label>
<label> <input type="radio" name="Surv_Q1" value="20">4 - Good</label>

我尝试了以下代码,但没有起作用。

 $("input[name='Surv_Q"+i+"']:checked").next('label').text();

你可以将这些文本放在单选按钮的属性中,例如data-name="5 - 优秀",然后像这样使用它。 - Rana Ghosh
可能是重复的问题,参考如何使用jQuery获取选定的单选按钮标签文本 - Nikolay Prokopyev
4个回答

22

HTML:

<label> <input type="radio" name="Surv_Q1" value="20" data-name="5 - Excellent" checked="true">5 - Excellent</label>
<label> <input type="radio" name="Surv_Q1" value="20" data-name="4 - Good">4 - Good</label>

脚本:

$("input[name='Surv_Q1']:checked").data('name');

或者如果您不想在HTML中进行更改,则使用这个::

$("input[name='Surv_Q1']:checked").parent('label').text();

4
您需要向上移动一级,以获取父级label
$("input[name='Surv_Q1']:checked").parent('label').text();

0
这可能会对某些人有所帮助... 在我的情况下,我使用了prev而不是parent来使其工作:
$('input[name="radioName"]:checked').prev('label').text();

0

你可以简单地使用这个方法来实现它。(在某些情况下,像以下这样保留父级元素)

$('input[name="selectorName"]:checked').parent().text();

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接