Problem using .NET UniqueID to reference RadioButton in Javascript?

D

David Whitney

Hi, all.

I'm trying to work with some client-side scripting issues with an
ASP.NET application. I realize I've probably done something wrong, but
at the moment it looks to me like an inconsistency in the way
javascript is interpreting form elements.

I generate my Javascript from a server-side control, and use the
UniqueID property of the control to generate what will be the final
client-side reference. Normally, this works fine; I've tried it on
code that enables/disables certain buttons, text boxes, etc. So,
puffed up by my own success, I then tried to apply the same technique
to a RadioButton. But when my JavaScript fires, I get a run-time error
indicating it doesn't recognize the identifier its being told to
access.

Here's a sample of the type of generated Javascript that *works*:

document.forms[0]["ContainerName:SubmitButton"].enabled=true;

But if I try to use this for a *radio button*, it fails:

if (document.forms[0]["ContainerName:RadioButtonName"].checked)
// do something

I'll get a client-side error that the value is null, which isn't true.

The ASP.NET code that generates this is something like the following:

protected override void Render(HtmlTextWriter w)
{
w.Write("if (document.forms[0][\"" + RadioButtonName.UniqueID +
"\"].checked)");
w.Write("// do something.");
}


In the debugger, if I replace "ContainerName:RadioButton" with
"ContainerName_RadioButton", (from the command window with a
debug.print statement) it *works* - just changing the colon to an
underscore. But the other syntax works everywhere else.

Am I missing something here, or is this just an inconsistency in the
way Javascript handles the radiobutton references/ID's?

Thanks,
David
 
N

Natty Gur

Hi,

Just my two cents :

I’m using Document.All("ControlID") And I’m using the ID property of the
control. (I already help some people that forget to add the ID attribute
to the control :) )

Natty Gur, CTO
Dao2Com Ltd.
28th Baruch Hirsch st. Bnei-Brak
Israel , 51114

Phone Numbers:
Office: +972-(0)3-5786668
Fax: +972-(0)3-5703475
Mobile: +972-(0)58-888377

Know the overall picture
 

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

No members online now.

Forum statistics

Threads
473,755
Messages
2,569,536
Members
45,013
Latest member
KatriceSwa

Latest Threads

Top