Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

Cannot enable disabled controls with client-side javascript

0 views
Skip to first unread message

Stu Carter

unread,
Aug 6, 2003, 8:07:02 AM8/6/03
to
Hi,

I have an aspx page where some controls are initially disabled by the
code-behind 'Page_Load' event. I want these controls to be dynamically
enabled when the user checks a checkbox. Because I don't want a post-back,
I added some javascript to do this

However, using client-side JS, I cannot enable any controls that have been
disabled by server-side code. If the control is initially enabled, I can
disable/enable it client-side.

I'm using the following JS:

document.getElementById("Recursive_chk").disabled = false;

Is this a known problem, or am I doing something wrong?

Thanks,
Stuart

Env: Windows 2003, VS. Net 2003, 1.1 Framework, IE 6+


Ahmed Ali

unread,
Aug 6, 2003, 8:30:30 AM8/6/03
to
Hi,

I dunno its a better way or not. but i suggest u to make the control disbale
on design time..
input id="cterdate" type="text" maxLength="12" size="20" name="cterdate"
runat="server" disabled

Now you can change the status of the field on page load event on the server
side or onthe client side. that will work ...

Regards

Ahmed

"Stu Carter" <Stu.C...@somekindofcompany.co.uk> wrote in message
news:#Dgu#MBXDH...@TK2MSFTNGP10.phx.gbl...

Stu Carter

unread,
Aug 6, 2003, 8:59:38 AM8/6/03
to
Hi Ahmed,

Thanks for the reply.

Yes, that would work with HTML controls, but I'm trying to enable a disabled
ASP.Net server side control...and thats the problem...

e.g.
<asp:checkbox id="Recursive_chk" style="Z-INDEX: 118; LEFT: 48px; POSITION:
absolute; TOP: 488px" tabIndex="11" runat="server" CssClass="description"
Enabled="False" Text="Recursive">

That checkbox is disabled at design time/code behind, but I can't enable it
using client-side script. And I don't want to revert to using HTML
controls, as its a step backwards. :)

My only other thought is to move the logic for enabling/disabling controls
to the HTML page and have that invoked when the page loads on the client,
but that just sucks!!

Regards,
Stuart

"Ahmed Ali" <ah...@visualsoft-inc.com> wrote in message
news:ur#a8YBXD...@tk2msftngp13.phx.gbl...> Hi,

John Saunders

unread,
Aug 6, 2003, 11:51:58 AM8/6/03
to
Stu,

How does Recursive_chk render on the client? Could you show us the resulting
HTML?
--
John Saunders
Internet Engineer
john.s...@surfcontrol.com

"Stu Carter" <Stu.C...@somekindofcompany.co.uk> wrote in message

news:OxFSZqBX...@tk2msftngp13.phx.gbl...

Stu Carter

unread,
Aug 6, 2003, 12:16:24 PM8/6/03
to
John, it renders as:

<span class="description" disabled="disabled" style="Z-INDEX: 117; LEFT:
48px; POSITION: absolute; TOP: 488px"><input id="Recursive_chk"
type="checkbox" name="Recursive_chk" disabled="disabled" tabindex="11"
/><label for="Recursive_chk">Recursive</label></span>

Hmm, is the span taking precedence over the checkbox? ASP.Net emits the
<span>

Cheers,
Stu

"John Saunders" <john.s...@surfcontrol.com> wrote in message
news:#7guKLDX...@tk2msftngp13.phx.gbl...

John Saunders

unread,
Aug 6, 2003, 12:29:29 PM8/6/03
to
Stu,

You may have hit the nail on the head. As an experiment, try putting that
code into your .aspx file as raw HTML (changing the name and id of the
checkbox, of course). And see if your JavaScript can enable it. I bet if you
remove the disabled attribute from the span, it will work.

All of which _still_ leaves you in trouble, but at least you'll know what
kind of trouble you're it! Your JavaScript code would have to use the DOM to
get to the parent of Recursive_chk to enable or disable it as well.


--
John Saunders
Internet Engineer
john.s...@surfcontrol.com

"Stu Carter" <Stu.C...@somekindofcompany.co.uk> wrote in message

news:udeUUYDX...@tk2msftngp13.phx.gbl...

Stu Carter

unread,
Aug 6, 2003, 1:00:58 PM8/6/03
to
Yes, said nail is now bent; it's the bloody <span>!

ASP.Net should not be setting the span to disabled, since it is completely
redundant - the checkbox renders itself disabled...<shakes head>...ASP.Net
is driving me nuts today! :)

Thanks for your help Jon!
Stu

"John Saunders" <john.s...@surfcontrol.com> wrote in message

news:uTBQIgDX...@TK2MSFTNGP10.phx.gbl...

Punisher

unread,
Aug 14, 2003, 11:28:46 AM8/14/03
to
I figured it out for ya. Had the same problem

use this

//To Disable
document.getElementById(strHiddenCheckBox).parentElement.setAttribute('disabled','true');


//To Enable
document.getElementById(strHiddenCheckBox).parentElement.removeAttribute('disabled');

0 new messages