realmonk has asked for the wisdom of the Perl Monks concerning the following question:

Hello again monks, I want to thanks for the advice on my other (less well written thread). My problem still remains and I am asking for some type of easy solution. I will post some test code along with my post.These perl function needs to be called again automatically once the submit button is clicked (onclick JavaScript). Can anyone give me a sample code to recall this function after a specific amount of time has passed. Then once the stop button is hit stop it from running. In my real code the function is calling using a database to get updated results. Code is error free.
#!/usr/bin/perl use CGI; use CGI::Carp qw( fatalsToBrowser ); use CGI::Ajax; use warnings; use strict; my $cgi = new CGI; my $ajax= new CGI::Ajax('report' => \&report); print $ajax->build_html($cgi, \&main); sub main { my $html = <<HTML; <html> <body> <input type="button" id="test" value="submit" onclick="report(['args__ +real','args__monk'],['report'])"> <input type="button" id="stop" value="stop"> <div id="report"></div> </body> </html> HTML return $html; } sub report { my $input1=shift; my $input2=shift; my $result=$input1.$input2; return $result; }
I know this might not be the proper way to do this however, I need a solution sometime this week. Any examples would be very useful. Thanks,

Replies are listed 'Best First'.
Re: CGI/AJax Question
by lostjimmy (Chaplain) on Apr 26, 2010 at 15:29 UTC
    I'm not entirely sure what you're asking for, but if you want to call your report function on an interval, you can use javascript's setInterval() or setTimeout() methods.

    Here is an example

      Yes, i have tried using setInterval() however, i am having issues passing strings into this function.
      onclick="setInterval('alert('test')', 5000)"
      i also tried
      onclick="setInterval('alert(\'test\')', 5000)"
      however, when i run with number it works fine.
      onclick="setInterval('alert(20)', 5000)"

        This is a Javascript issue. You need to learn how to debug your Javascript. Your browser(s) will tell you what they find unacceptable with your Javascript, and you have been shown various ways to avoid the single quotes/double quotes issue already. But basically, this website is not the forum for Javascript questions.