C#RadioButton List使用$获取JS中的值(“input [name ='<%=

时间:2018-03-15 11:19:29

标签: javascript c#

我正在尝试在js中获取c#单选按钮列表的值。因为ID在代码运行时更改并最终在其前面有ContentPlaceHolder1,所以我不能以标准的js方式调用ID。

相反,我之前在其他领域使用过这个,但从未在单选按钮列表中使用过。我正在使用这行代码但未定义 - 任何人都可以发现问题!?

var prvalue = $("input[name='<%=personalRadio.UniqueID%>']:radio:checked").val();`
console.log(prvalue);`

这让我疯了!谢谢!

更新

因此,运行时单选按钮列表的总ID为ContentPlaceHolder1_personalRadio

但我注意到每个广播项目略有不同: ContentPlaceHolder1_personalRadio_0ContentPlaceHolder1_personalRadio_1

所以我认为这就是为什么我的价值没被选中的原因。我不知道如何解释这个问题呢?

这是.aspx文件中的单选按钮字段:

<asp:RadioButtonList ID="personalRadio" RepeatLayout="Flow" RepeatDirection="Horizontal" runat="server" required="true" onChange="selectionShow()">
  <asp:ListItem class="radio-inline" Value="yes" Text="Yes"></asp:ListItem>
  <asp:ListItem class="radio-inline" Value="no" Text="No"></asp:ListItem>
</asp:RadioButtonList> 

JS代码更新:

    //Radio buttons in the risk section. 
    var prvalue = $("input[name='<%=personalRadio.clientID%>']:radio:checked").val();
    var psvalue = $("input[name='<%=sensitiveRadio.UniqueID%>']:radio:checked").val();
    var crvalue = $("input[name='<%=confidentialRadio.UniqueID%>']:radio:checked").val();

    console.log(prvalue);

然后我添加了它,但它会导致语法错误:

var prvalue2 = $("#<%= personalRadio.ClientID %> input:checked").val();
console.log(prvalue2);

来自HTML网页来源的代码:

    //Radio buttons in the risk section. 
    var prvalue = $("input[name='<%=personalRadio.clientID%>']:radio:checked").val();
    var psvalue = $("input[name='<%=sensitiveRadio.UniqueID%>']:radio:checked").val();
    var crvalue = $("input[name='<%=confidentialRadio.UniqueID%>']:radio:checked").val();

    console.log(prvalue);

    var prvalue2 = $("#<%=personalRadio.ClientID%> input:checked").val();
    console.log(prvalue2);

1 个答案:

答案 0 :(得分:1)

var prvalue = $("#<%= personalRadio.ClientID %> input:checked").val();
console.log(prvalue);

请记住,此代码必须放在.aspx / .ascx文件中,其中C#片段由服务器端ASP.NET编译和执行,而不是在.js文件中,我确定在哪里你有它。