【发布时间】:2011-02-24 19:26:41
【问题描述】:
我有 20 个动态创建的单选按钮列表 - 然后在提交表单时声明。
我还有一些代码,用于计算已回答问题的总数和已回答问题的总价值。 - 当单选按钮列表被硬编码到页面中时,此代码曾经可以工作,但现在不行。 - 我正在写回答的问题数量和页面所有答案的总价值,但它们返回为 0。
既然单选按钮列表是动态创建的,谁能明白为什么这可能不起作用。?
后面的代码:
Sub Page_Load(ByVal Sender as Object, ByVal E as EventArgs)
For i As Integer = 1 To 20
Dim TableRow As New TableRow()
Dim TableRowCell_1 As New TableCell()
TableRow.Cells.Add(TableRowCell_1)
holidayQuestionnaireTable.Rows.Add(TableRow)
Dim question As New RadioButtonList
question.ID = "question" & i
question.Items.Insert(0, new listitem("", "1"))
question.Items.Insert(1, new listitem("", "2"))
TableRowCell_1.Controls.Add(question)
Next
End Sub
...
Sub btnSendFeedback_Click(sender as Object, e as EventArgs)
Dim question1 As RadioButtonList = DirectCast(Page.FindControl("question1"), RadioButtonList)
Dim question2 As RadioButtonList = DirectCast(Page.FindControl("question2"), RadioButtonList)
Dim question3 ...
...
Dim question19 As RadioButtonList = DirectCast(Page.FindControl("question19"), RadioButtonList)
Dim question20 As RadioButtonList = DirectCast(Page.FindControl("question20"), RadioButtonList)
Dim rblCount As Double
Dim total As Double
Dim avg As Double
For Each ctrl As UI.Control In Me.myPanel.Controls
If TypeOf ctrl Is RadioButtonList Then
Dim rbl As RadioButtonList = DirectCast(ctrl, RadioButtonList)
If rbl.SelectedIndex > -1 And not rbl.ID = "question18" Then
Dim value As Double = Double.Parse(rbl.SelectedValue)
total += value
rblCount += 1
End If
End If
Next
Response.Write(rblCount & " - " & total & " - " & (total / rblCount))
End Sub
主体:
<asp:Placeholder ID="myPanel" runat="server">
<asp:Table runat="server" CellPadding="0" CellSpacing="0" GridLines="None" HorizontalAlign="Center" CssClass="ratingtable" ID="holidayQuestionnaireTable" />
<asp:Button OnClick="btnSendFeedback_Click" runat="server" Text="Submit..." ID="submitbutton" />
</asp:Placeholder>
【问题讨论】:
-
"but it now does not."是对不起作用的相当模糊的描述! -
对不起...希望现在更清楚一点。我不确定如何最好地解释它。
-
您还应该显示动态添加 RBL 的代码(我假设是面板?!)。面板中似乎没有控件,那么您在何处、何时以及向什么添加 RadioButtonLists?您是否在每次回发时都重新创建它们?
标签: asp.net vb.net radiobuttonlist