Script Control.value method

J

john

I read that this method:



<script type="text/javascript" language="javascript">

alert($get('<%= CheckTxt.ClientID%>').value)

</script>



Can be used instead of:



alert(document.getElementById("TabContainer1_TabPanel5_FormView8_CheckTxt").value)





But I receive a CheckTxt not Declared error, any suggestion as to how to
implement this?



Thanks

John
 
W

Walter Wang [MSFT]

Hi John,

The purpose of using <%= CheckTxt.ClientID %> is to output a dynamic id of
the control CheckTxt at run-time. To make ASP.NET compiler recognize
CheckTxt, you must have a control with ID "CheckTxt" at the direct child
control hierarchy of current container (Page class or UserControl according
to the context).

If you're having other INamingContainer between this control and the root
container (for example, you're defining a control with id "CheckTxt" within
an ITemplate such as ItemTemplate), the compiler will not be able to refer
to the control directly using reference "CheckTxt".

You can use ClientScript.RegisterStartupScript or RegisterScriptBlock to
generate the javascript functions at run-time; at that time if you could
get a reference to a control (using FindControl), then you can use its
ClientID property to build the javascript.

Regards,
Walter Wang ([email protected], remove 'online.')
Microsoft Online Community Support

==================================================
When responding to posts, please "Reply to Group" via your newsreader so
that others may learn and benefit from your issue.
==================================================

This posting is provided "AS IS" with no warranties, and confers no rights.
 
J

john

Thanks, I was doing some experimenting and was thinking maybe it was just as
you stated, because if I just added a label control if found it no problem;
so it's the template that is at issue. I will study your other method to see
if I can learn it, I don't like having to rewrite my script with every
design change, so that would be a plus if I can do it your way.

John
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Members online

Forum statistics

Threads
473,769
Messages
2,569,577
Members
45,052
Latest member
LucyCarper

Latest Threads

Top