繁体   English   中英

在jQuery中获取所选单选按钮的显示文本

[英]Getting the display text of the selected radio button in jQuery

我正在填充一个列表单选按钮,如下所示。

<td>
    @if (ViewBag.myList as System.Collections.IEnumerable != null)
    {
        foreach (var aType in new SelectList(ViewBag.myList as System.Collections.IEnumerable, "Value", "Text", new { TabIndex = 0 }))
        {
            @Html.RadioButton("rdoMyList", aType.Value)
            @Html.Label(aType.Text)
        }
    }
</td>

我在jQuery中获得选定单选按钮的值,如下所示。

var selectedValue = $.trim($("[id^='rdoMyList']:checked").val());

我似乎无法弄清楚的是获取所选单选按钮的显示文本。

我假设“显示文本”是指与所选收音机相邻的label元素的文本。 为此,您需要使用next() 尝试这个:

$('input[type="radio"]').change(function() {
    var $radio = $(this);
    var selectedValue = $radio.val();
    var labelText = $radio.next('label').text();

    // do something with your variables here...
});

您可以通过向其添加类来改进input[type="radio"]选择器,以缩小要定位的元素的范围。

您可以尝试以下操作:为单选按钮添加更改事件处理程序,并获取与其相邻的标签文本。

注意 -假设标签位于每个单选按钮旁边

$(function(){
  $("[id^='rdoMyList']").change(function(){
     alert($(this).next('label').text());
  });
});

单选按钮未分配文本。 您可以将标签文本分配给选中的单选按钮。

var text = $("input:checked + label").text();

+表示相邻的选择器。 它只会选择旁边带有选中输入的标签。

希望这可以帮助

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM