How to Show/Hide Text field based on radio button values with VB in .aspx

I am new to vb.net and have to change code to display a text field for more than one condition.
Right now, the text box only displays for one radio button list value.  I'd like it to display for two values, but there is also an N/A value.  The values are Not Safe, Safe, and N/A
The code is as follows:
Showtxtfield(strID, rblButton.Item.Item(1).Selected)
I changed it to Showtxtfield(strID, True) to display regardless of the value of the radio button, but that displays it for all three radio button values, and I only want it for two, not the third, which is N/A.  The subroutine for Showtxtfield is as follows:
 Private Sub Showtxtfield(ByVal strID As String, ByVal blnShow As Boolean)
            ' Show the text box and radio buttons
            tblCategory.FindControl("pnlQuestion1" & strID).Visible = blnShow
        End Sub
Thanks for any help.
newtoperlpgmAsked:
Who is Participating?
 
Carl TawnSystems and Integration DeveloperCommented:
Sorry, had an extra item in there. Try it as:
Dim show As Boolean = RBList1.Items(0).Selected Or RBList1.Items(1).Selected
Showtxtfld(strID, show)

Open in new window

0
 
Jerry MillerCommented:
You set up your radiobuttonlist with yor values and then check the SelectedValue to determine how to proceed. I use a SELECT CASE to that, but you could use an If/Else if you don't have too many items.

 <asp:RadioButtonList ID="rb" runat="server" TextAlign="Right" AutoPostBack="true" >
               <asp:ListItem Text="XML File" Value="1" />
               <asp:ListItem Text="Import" Value="2" />
               <asp:ListItem Text="Report" Value="3" />
               <asp:ListItem Text="Bills" Value="4" />
               <asp:ListItem Text="Excel" Value="5" />
               </asp:RadioButtonList>

Select Case rb.SelectedValue
            Case "1L"
            'do stuff
            Case "2"
                'do stuff
            Case "3"
                'do stuff
            Case "4"
                'do stuff
            Case "5"
               'do stuff
        End Select
0
 
Carl TawnSystems and Integration DeveloperCommented:
You need to separate out your logic slightly. Try something like:
Dim show As Boolean = rblButton.Item.Item(1).Selected Or rblButton.Item.Item(2).Selected
Showtxtfield(strID, show)

Open in new window

0
 
newtoperlpgmAuthor Commented:
Carl Tawn,
I tried your suggestion, however, I get the following error.  I am fairly new to VB.net.  Thanks.
Compiler Error Message: BC30456: 'Item' is not a member of 'System.Web.UI.WebControls.RadioButtonList'.
0
 
newtoperlpgmAuthor Commented:
That worked for me.  Thanks for your help.
0
Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.

All Courses

From novice to tech pro — start learning today.