Question:
My project is a based on thin client/server architecture. Internet Explorer 3.02 is the front end using ASP; ActiveX controls and DLLs form the business objects; and Oracle is the back end. We are now migrating from IE 3.02 to IE 5.0. The problem is that in IE5, the VBScript is executing before the control downloads so if there is a reference to the control, we get an error message: Object does not support Uctlir0705.setName – where Uctlir0705 is the control name and setName is the property of the control.
We have tried incorporating a delay loop but this is machine dependent. We have also tried using the show event where we raise another event loaded in the user control but this solution is unstable (sometimes the event loaded does not fire in the ASP).
Answer:
Place all your client-side script inside a function and then call the function from the BODY ONLOAD event. Only when the page has finished loading will the script start to run.