NealR
NealR

Reputation: 10699

How to access span id in code behind

I have an asp website with the following control:

    <span id="expTrainingShow" class="clsLink" style="margin-left: 20px;" onclick="GridChanger();">
        + Show Expired Continuing Education</span>

I want to hide this based on a condition set in the code behind. Can I access a span id like that? (the website is built using visual basic)

Upvotes: 7

Views: 37954

Answers (1)

Tim Schmelter
Tim Schmelter

Reputation: 460158

You can use a Label instead of a html-span (which is also rendered as span) or you could add runat="server". Setting runat="server" allows you to access the HTML element in the code behind just as any other server control, via its ID.

<span id="expTrainingShow" runat="server" class="clsLink" style="margin-left: 20px;" onclick="GridChanger();" ></span>

somewhere in codebehind(the span is a HtmlGenericControl on serverside):

expTrainingShow.InnerHtml = yourText ' set the text '

or

expTrainingShow.Visible = False ' hide it '

Note that Visible=False on serverside means that the control is not rendered at all on clientside, hence it does not exist in the html and can be accessed only on serverside.

If you just want to hide it but render it anyway, you should use CSS or expTrainingShow.Style.Add("display","none").

Upvotes: 21

Related Questions