我正在尝试使用javascript或c#来获取数据列表和单选按钮值中选中的单选按钮。
我有代码:
<asp:DataList ID="DataList1" runat="server"
BorderStyle="None" BorderWidth="1px" CellPadding="4"
DataKeyField="Qno" DataSourceID="SqlDataSource1">
<EditItemStyle HorizontalAlign="Left" />
<FooterStyle BackColor="#FFFFCC" ForeColor="#330099" />
<HeaderStyle BackColor="#990000" Font-Bold="True" ForeColor="#FFFFCC" />
<ItemStyle BackColor="White" ForeColor="#330099" />
<ItemTemplate>
Qno:
<asp:Label ID="QnoLabel" runat="server" Text='<%# Eval("Qno") %>' />
<br />
Question:
<asp:Label ID="QuestionLabel" runat="server" Text='<%# Eval("Question") %>' />
<br />
Ans1:
<asp:RadioButton ID="RadioButton1" GroupName="gp" Text='<%# Eval("Ans1") %>' runat="server" />
<br />
Ans2:
<asp:RadioButton ID="RadioButton2" GroupName="gp" runat="server" Text='<%# Eval("Ans2") %>' />
<br />
Ans3:
<asp:RadioButton ID="RadioButton3" GroupName="gp" runat="server" Text='<%# Eval("Ans3") %>' />
<br />
Ans4:
<asp:RadioButton ID="RadioButton4" GroupName="gp" runat="server" Text='<%# Eval("Ans4") %>' />
<br />
<br />
</ItemTemplate>
<SelectedItemStyle BackColor="#FFCC66" Font-Bold="True" ForeColor="#663399" />
<SeparatorStyle Font-Bold="True" Font-Italic="False" Font-Overline="False"
Font-Strikeout="False" Font-Underline="False" HorizontalAlign="Right" />
</asp:DataList>
答案 0 :(得分:1)
使用此功能
<script type="text/javascript">
function GetSelectedRadioButtonValue(strGroupName) {
var arrInputs = document.getElementsByTagName("input");
for (var i = 0; i < arrInputs.length; i++) {
var oCurInput = arrInputs[i];
if (oCurInput.type == "radio" && oCurInput.name == strGroupName && oCurInput.checked)
return oCurInput.value;
}
return "";
}
</script>
称之为
GetSelectedRadioButtonValue('gp')
答案 1 :(得分:0)
你可以这样做
<script type="text/javascript">
function GetSelectedRadioButtonValue(strGroupName) {
var arrInputs = document.getElementsByTagName("input");
for (var i = 0; i < arrInputs.length; i++) {
var oCurInput = arrInputs[i];
if (oCurInput.type == "radio" && oCurInput.name == strGroupName && oCurInput.checked)
return oCurInput.value;
}
return "";
}
</script>
答案 2 :(得分:0)
您正在寻找一个javascript解决方案,但适合其他任何乐意使用JQuery的人 $("input[name=g]:checked").val()
其中'g'是群组名称将是一个快速解决方案。
答案 3 :(得分:0)
试用此代码:
{
foreach (DataListItem item in DataList.Items)
{
RadioButtonList RB = item.FindControl("RB") as RadioButtonList;
if(RB!=null && RB.SelectedValue!=null)
{
Label1.text=RB.SelectedValue //for testing purpose only
}
}
答案 4 :(得分:0)
在Datalist的itembound事件上尝试以下代码
RadioButton rdbtn= e.Item.FindControl("RadioButton1") as RadioButton;
var chkstring = rdbtn.Checked;
无论是否检查,您都会获得该值 同样地它