Solved

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

Posted on 2011-10-01
4
316 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
[X]
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
  • 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:Bill Nolan
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: SSL Checker

Scans your site and returns information about your SSL implementation and certificate. Helpful for debugging and validating your SSL configuration.

One of a set of tools we are providing to everyone 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

Use these top 10 tips to master the art of email signature design. Create an email signature design that will easily wow recipients, promote your brand and highlight your professionalism.
This article discusses how to create an extensible mechanism for linked drop downs.
In this tutorial viewers will learn how to embed videos in a webpage using HTML5. Ensure your DOCTYPE declaration is set to HTML5: "<!DOCTYPE html>": Use the <video> tag to insert a video. Define the src as the URL of your video; this is similar to …
HTML5 has deprecated a few of the older ways of showing media as well as offering up a new way to create games and animations. Audio, video, and canvas are just a few of the adjustments made between XHTML and HTML5. As we learned in our last micr…

733 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