我想知道是否有人可以帮助我;我有一张表格如下所示:
<table id="Table1" border="0">
<tr>
<td><b>1.</b> Question 1</td>
</tr><tr>
<td style="border-width:5px;border-style:solid;"></td>
</tr><tr>
<td align="left" style="width:1000px;"><input id="Radio1" type="radio" name="Group1" value="Radio1" /><label for="Radio1">Answer1</label></td>
</tr><tr>
<td align="left" style="width:1000px;"><input id="Radio1" type="radio" name="Group1" value="Radio1" /><label for="Radio1">Answer2</label></td>
</tr><tr>
<td align="left" style="width:1000px;"><input id="Radio1" type="radio" name="Group1" value="Radio1" /><label for="Radio1">Answer3</label></td>
</tr><tr>
<td align="left" style="width:1000px;"><input id="Radio1" type="radio" name="Group1" value="Radio1" /><label for="Radio1">Answer4</label></td>
</tr><tr>
<td style="height:30px;"></td>
</tr><tr>
<td><b>2.</b> Question 2</td>
</tr><tr>
<td style="border-width:5px;border-style:solid;"></td>
</tr><tr>
<td align="left" style="width:1000px;"><input id="Radio2" type="radio" name="Group2" value="Radio2" /><label for="Radio2">yes</label></td>
</tr><tr>
<td align="left" style="width:1000px;"><input id="Radio2" type="radio" name="Group2" value="Radio2" /><label for="Radio2">no</label></td>
</tr><tr>
<td style="height:30px;"></td>
</tr>
</table>
如何循环浏览每组单选按钮并获取所选单选按钮的文本?
上面显示的代码是动态创建的......在我的aspx文件中,我有以下代码:
<asp:Table ID="Table1" runat="server">
</asp:Table>
答案 0 :(得分:3)
如果要访问ASP.NET中的行(在服务器端),则需要将表,行和单元格转换为服务器控件(使用runat =“server”)并遍历控件中的表
编辑:: - 如果您按照以下方式添加行,单元格和radion按钮,它们都将是服务器控件(并且是runat = server),以便您可以按照方式访问它们我在上面提到过: -
// Create new row and add it to the table.
TableRow tRow = new TableRow();
table1.Rows.Add(tRow);
for (cellCtr = 1; cellCtr <= cellCnt; cellCtr++)
{
// Create a new cell and add it to the row.
TableCell tCell = new TableCell();
RadioButton rdb = new RadioButton();
rdb.ID = "rdb_" + cellCtr.ToString();
rdb.Text = "radio button";
rdb.GroupName = "rdbGroup";
tCell.Controls.Add(rdb);
tRow.Cells.Add(tCell);
}
修改: - 强>
您可以在每个单元格中找到控件。如下所示: -
foreach(TableCell cell in tableRow.Cells)
{
foreach(Control ctrl in cell.Controls)
{
if(ctrl is RadioButton)
{
if(ctrl.Selected)
{
string rdValue=ctrl.Text;
}
}
}
}
或者如果您想使用Javascript在客户端进行迭代,请查看here并且您不必应用runat =“server”。
答案 1 :(得分:2)
听起来你的标记页面中有一个准系统<table>
,然后动态添加<input>
。
考虑采用这种方法:
runat="server"
属性添加到您的表格中。<input>
代码的代码中,添加一个新的RadioButton
控件。在此处使用您可以预测的ID。如果选择按逻辑分组,也许您可以使用RadioButtonList
!<tr>
和<td>
添加为字符串。考虑new TableRow()
和new TableCell()
的选项。然后使用RadioButton
TableCell.Controls
添加到tc.Controls.Add(myNewRadioButton);
集合中
RadioButton
引用您的id
控件,或者循环浏览Controls
的{{1}}集合属性。Table1
答案 2 :(得分:0)
将所有控件转换为服务器控件(通过添加runat =“server”属性)。然后,您可以以编程方式访问您需要的内容o。服务器。