Search code examples
asp.netvb.netdatalistradiobuttonlistdataitem

How to hide items within a datalist if values are NULL (asp.net)(visual basic)


For example in my datalist if Eval("OptionJ").Tostring = Null I would like the function GetVisible to set visibility of the radio button to false like so:

      <input name="Q<%#Eval("ID")%>" type="radio" value="J" visible="<%# GetVisible(Eval("OptionJ").ToString()) %>">  
        <%#Server.HtmlEncode(Eval("OptionJ").ToString())%>  
        </option><br />

I then have a codebehind function like so:

Protected Function GetVisible(ByVal Evalresult As String) As String
    If Evalresult = Nothing Then
        Return "False"
    Else
        Return "True"
    End If
End Function

I have also tried checking EvalResult = String.empty

In the outputted html the visible status is being set to false...

<input name="Q3" type="radio" value="J" visible="False">

But it is still displayed on the page!

Please can you let me know how to get this working? Thanks in advance for your time reading and any answers posted.


Solution

  • Try this one:

    <input name="Q3" type="radio" value="J" visible="false" runat="server">
    

    Visible property works only for ASP.NET Server control but here you are using Html Input Control.

    So one approach is that add runat="server" attribute in this control to if you want to continue with visible property and second one is that add style="visibility:hidden" attribute for HTML input control as given below:

    <input name="Q3" type="radio" value="J" style="visibility:hidden">