Beefy Boxes and Bandwidth Generously Provided by pair Networks
Problems? Is your data what you think it is?
 
PerlMonks  

Re: Inserting javascript into perl script

by mikeirw (Pilgrim)
on Nov 18, 2002 at 04:29 UTC ( #213651=note: print w/ replies, xml ) Need Help??


in reply to Inserting javascript into perl script

Another way to approach it if you're using CGI.pm is like this...

$query = new CGI; print $query->header; $JSCRIPT=<<END; // Ask a silly question function riddle_me_this() { var r = prompt("What walks on four legs in the morning, " + "two legs in the afternoon, " + "and three legs in the evening?"); response(r); } // Get a silly answer function response(answer) { if (answer == "man") alert("Right you are!"); else alert("Wrong! Guess again."); } END print $query->start_html(-title=>'The Riddle of the Sphinx', -script=>$JSCRIPT);

...which I lifted straight from perldoc CGI.


Comment on Re: Inserting javascript into perl script
Select or Download Code
Re: Re: Inserting javascript into perl script
by dingus (Friar) on Nov 18, 2002 at 10:30 UTC
    Another way to approach it if you're using CGI.pm is like this...

    SNIP

    ...which I lifted straight from perldoc CGI.

    And little way down is the trick for when you have a lot of js which doesn't change between page displays, that is storing the js in a separate file and including it in a <SCRIPT SRC=...> tag.

    print $q->start_html(-title=>'The Riddle of the Sphinx', -script=>{-language=>'JAVASCRIPT', -src=>'/javascript/sphinx.js'} );
    This is a GOOD thing for a number of reasons including the fact that it forces you to separate client and server which can be good for debugging weird stuff.

    Aristotle posted an excellent comment 213336 about the problems of combined js/perl which you should bear in mind. This doesn't menan don't do it but you do need to withe rhave full control of your clients or a way to degrade gracefully if they don't support javascript.

    Dingus


    Enter any 47-digit prime number to continue.

Log In?
Username:
Password:

What's my password?
Create A New User
Node Status?
node history
Node Type: note [id://213651]
help
Chatterbox?
and the web crawler heard nothing...

How do I use this? | Other CB clients
Other Users?
Others chilling in the Monastery: (6)
As of 2014-09-19 08:21 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    How do you remember the number of days in each month?











    Results (133 votes), past polls