Solved

How do I disable an ImageButton until the web page is completely loaded?

Posted on 2011-10-01
4
314 Views
Last Modified: 2012-05-12
I am working on a web app.  And, I have an ImageButton object that throws an error, if it is clicked before the page load completes.  It is set up, via javascript, as a Calendar button that is tied to an input field.  There is some processing that occurs on the input field that is causing this problem (if the button is clicked prior to completion).  So, I want to know how to disable this ImageButton until the entire page is completely loaded.  I searched around and determined (maybe incorrectly so) that I should do this within the onLoad atrribute of the Body.  Note: this is also where the function is called that is doing the processing that causes the error when the button is clicked prematurely).  I thought that if I start with a disabled imagebutton first, I could reenable it as the final onLoad statement.  But, that hasn't worked so far, as I am getting an error.  Please correct this solution or suggest a different one that works.  I am knowledgeable in C#, but very new to HTML/Javascript, so I need baby step-type solution please.

My current code:
<body onload=populateCurrDate('tbArrDate', 'tbDSDateTime', 'tbALocDateTime', 'tbPLocDateTime'); document.forms[0]btnArrDate.disabled=false;">
where btnArrDate is the ImageButton that I want to enable.  But, I get the following runtime error: 'document.forms.0.btnArrDate' is null or not an object.  But, it is establish later in the <form> ....</form> definition.  And, I thought onload executes after the page is loaded.  If not, what do I use?
0
Comment
Question by:spazjr01
  • 2
4 Comments
 
LVL 82

Accepted Solution

by:
leakim971 earned 500 total points
ID: 36898156
<body onload="populateCurrDate('tbArrDate', 'tbDSDateTime', 'tbALocDateTime', 'tbPLocDateTime'); document.getElementsByName('btnArrDate')[0].removeAttribute('disabled');">
0
 

Author Closing Comment

by:spazjr01
ID: 36898163
thanks much.  Worked on first try.
0
 
LVL 7

Expert Comment

by:Slimfinger
ID: 36898168
Shouldn't
   "document.forms[0]btnArrDate"
...be
   "document.forms[0].btnArrDate"
...instead?

I realize this is not an answer, but I am curious what the button does and how it is causing an error.
0
 

Author Comment

by:spazjr01
ID: 36899356
Slimfinger,
You are correct.  That was simply a typo when I posted the question.  My code actually had document.forms[0].btnArrDate.  Sorry for the confusion.
0

Featured Post

Free Tool: Subnet Calculator

The subnet calculator helps you design networks by taking an IP address and network mask and returning information such as network, broadcast address, and host range.

One of a set of tools we're offering as a way of saying thank you for being a part of the community.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Suggested Solutions

It was really hard time for me to get the understanding of Delegates in C#. I went through many websites and articles but I found them very clumsy. After going through those sites, I noted down the points in a easy way so here I am sharing that unde…
Boost your ability to deliver ambitious and competitive web apps by choosing the right JavaScript framework to best suit your project’s needs.
In this tutorial viewers will learn how to style elements, such a divs, with a "drop shadow" effect using the CSS box-shadow property Start with a normal styled element, such as a div.: In the element's style, type the box shadow property: "box-shad…
The viewer will learn the basics of jQuery including how to code hide show and toggles. Reference your jQuery libraries: (CODE) Include your new external js/jQuery file: (CODE) Write your first lines of code to setup your site for jQuery…

829 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question