Solved

setInterval isnt working reliably for asp.net application

Posted on 2006-07-19
7
313 Views
Last Modified: 2012-08-13
I have some code as follows:
My goal is to have a timer in java script that does some periodic checks and submits the form.  I have used some alerts to see if my javascript is working.  THe first time I tried the code below I got an alert window every second.  But sadly, re reunning I dont see any alerts at all.  If I lower the timeout i might get one alert.

I tried changing the alert to document.Form1.submit(); since that is what i ultimately want, but I dont see a form submission either.  the html for the page:
      <body MS_POSITIONING="GridLayout">
            <form id="Form1" method="post" runat="server">


The working c# code:  (at least I get my alert if its added to check()
              if(!Page.IsPostBack)
               {
                    SubmitButton.Attributes.Add("onclick","check();");
               }

The not working very well javascript:
function check(){
     setInterval("checkStatus()",1000)
}
function checkStatus(){
     alert('checkfile');
}
0
Comment
Question by:lynx2sw1
  • 3
  • 3
7 Comments
 
LVL 7

Expert Comment

by:FDzjuba
Comment Utility
use
setTimeout("doForwardStep()", 2000);

instead of
setInterval("doForwardStep()", 2000);


0
 
LVL 7

Expert Comment

by:FDzjuba
Comment Utility
and to get repeatative timers  call timer function from initialize function again like this,

function checkStatus(){
     alert('checkfile');
     check();
}
0
 
LVL 1

Author Comment

by:lynx2sw1
Comment Utility
Modified as per below.  I get a few form submissions , maybe 5, and then no more.
Do I need to be clearing and resetting something?
var t
var count=0;
function check(){
      setTimeout("checkStatus()",2000);
}
function checkStatus(){
      document.Form1.submit();
      check();
}
0
IT, Stop Being Called Into Every Meeting

Highfive is so simple that setting up every meeting room takes just minutes and every employee will be able to start or join a call from any room with ease. Never be called into a meeting just to get it started again. This is how video conferencing should work!

 
LVL 7

Expert Comment

by:FDzjuba
Comment Utility
is your page reloading, then stick the setTimeout in the body of the document which will trigger itself everytime the page is reloaded, no need for functions.

0
 
LVL 1

Author Comment

by:lynx2sw1
Comment Utility
well, the real goal is to periodically do a test, and only reload when the test indicates.
0
 
LVL 10

Accepted Solution

by:
eguilherme earned 500 total points
Comment Utility
i suggest sticking with setInterval, but i suggest aswell clearing ur interval before anything

var intervalID
function check(){
     intervalID = setInterval("checkStatus()",1000)
}
function checkStatus(){
    if(whatIwant==true)
    {
        clearInterval(intervalID)

    }
}

0
 
LVL 1

Author Comment

by:lynx2sw1
Comment Utility
oops.  I meant to award FDZJuba.  
0

Featured Post

What Security Threats Are You Missing?

Enhance your security with threat intelligence from the web. Get trending threat insights on hackers, exploits, and suspicious IP addresses delivered to your inbox with our free Cyber Daily.

Join & Write a Comment

This article shows how to create and access 2-dimensional arrays in JavaScript.  It includes a tutorial in case you are just trying to "get your head wrapped around" the concept and we'll also look at some useful tips for more advanced programmers. …
When you need to keep track of a simple list of numbers or strings, the Array object is your most direct tool.  As we saw in my earlier EE Article (http://www.experts-exchange.com/A_3488.html), typical array handling might look like this: (CODE) B…
The viewer will learn the basics of jQuery, including how to invoke it on a web page. 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.: (CODE)
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…

771 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

Need Help in Real-Time?

Connect with top rated Experts

9 Experts available now in Live!

Get 1:1 Help Now