jQuery - ASP RadioButtonList:你如何获得value属性?

时间:2014-01-08 11:16:52

标签: c# jquery asp.net

我正在使用内置RadioButtonList元素的ASP ListItem。我给了每个选项值。见下面的例子:

<asp:RadioButtonList ID="rblTestList" runat="server">
    <asp:ListItem Selected="True" Text="Test1" Value="Test1" />
    <asp:ListItem Text="Test2" Value="Test2" />
    <asp:ListItem Text="Test3" Value="Test3" />
    <asp:ListItem Text="Test4" Value="Test4" />
</asp:RadioButtonList>

我正在尝试获取所选ListItem的值。我使用以下代码行来获取值,但我得到的是值1(不是我给它的文本值)。 API表示Value属性的类型为String,因此我看不出为什么它不起作用。 (见:ListItem.Value Property

var option = $('#<%=rblTestList.ClientID %> input[type=radio]:checked').val();

有谁知道这里的问题是什么?

编辑:更新的代码段(旧的错误)

4 个答案:

答案 0 :(得分:0)

试试这个

$('document').ready(function () {
    $('#<%=rblTestList.ClientID%>').click(function () {
      if($(this).is(':checked')){
        var selectedValue = $(this).val();            
        alert(selectedValue);
      }
    });
});

更新1:

这是一个服务器端控件,在这里你需要首先找到输入无线电控制并检查它是否检查或取消选中属性。

尝试此更新

$('document').ready(function () {
        $('#<%=rblTestList.ClientID%>').find('input[type=radio]').click(function () {
          if($(this).is(':checked')){
            var selectedValue = $(this).val().replace('Test','');            
            alert(selectedValue);
          }
        });
});

更新2

如果你想要数字输出,那么你必须将选项值放在数字中,如Value="1"

HTML

<asp:RadioButtonList ID="rblTestList" runat="server">
    <asp:ListItem Selected="True" Text="Test1" Value="1" />
    <asp:ListItem Text="Test2" Value="2" />
    <asp:ListItem Text="Test3" Value="3" />
    <asp:ListItem Text="Test4" Value="4" />
</asp:RadioButtonList>

jquery代码与UPDATE 1

中的相同

答案 1 :(得分:0)

使用Checkbox On Change Event获取价值

$('#<%=rblTestList.ClientID%>').on('change',function () {
  if($(this).is(':checked')){ //Checks Checked or Not
    var Value = $(this).val(); //Here Your Value
  }              
});

答案 2 :(得分:0)

试试这个


     $(function () {
                $(".Jqanchor").click(function () {               
                    var option = $('# input[type=radio]:checked').next().text();
                    alert(option);
                });

            })

和aspx

<asp:RadioButtonList ID="rblTestList" runat="server">
        <asp:ListItem Selected="True" Text="Test1" Value="1" />
        <asp:ListItem Text="Test2" Value="2" />
        <asp:ListItem Text="Test3" Value="3" />
        <asp:ListItem Text="Test4" Value="4" />
    </asp:RadioButtonList>
    <a href="#" class="Jqanchor">content</a>

答案 3 :(得分:0)

事实证明它与资源键有关。我最初使用过数字然后更改为文本,但资源键未更新,因此它始终优先于内联值属性。我错过了我的代码片段中的资源键部分,因为我认为它并不重要。我的错。很抱歉浪费每个人的时间!