• 締切済み

CGIの中のjavascriptに関して

教えて下さい。 下記のようなCGIファイルにjavascriptを記載しようと考えて いますが、どうしてもエラーとなってしまいます。 《エラー内容》 Network Error(tcp_error) *  《記載内容》 #!/usr/bin/perl <script type="text/javascript"> <!-- var url = "http://999.999.999.999/"; //ジャンプ先のURLを指定 var moveTime = 2000; //移動までの時間をミリ秒で指定 function jump(){ location.href = url; } setTimeout (jump, moveTime); //--> </script> print "Content-type: text/html\n\n"; print qq! <html> <head> <title>指定秒後に別のページへジャンプ</title> <META Http-Equiv="Content-Type" Content="text/html;charset=EUC-JP"> <body> <p><a href="index.html">index.html</a><p> </body> </html> !; 何か間違った記述の仕方をしているのでしょうか。。。 CGIファイルにjavascriptを記載する場合はどこへ記載すれば 良いでしょうか。。。。 教えて下さい。

みんなの回答

  • luka3
  • ベストアンサー率72% (460/632)
回答No.2

目的が別のページに移動するということだけならば、無理にJavaScriptを使わなくてもいいと思います。 ↓こんな感じで #!/usr/bin/perl $url = "http://www.yahoo.co.jp/"; $sec = 2; print "Content-type: text/html\n\n"; print qq! <html> <head> <title>指定秒後に別のページへジャンプ</title> <META Http-Equiv="Content-Type" Content="text/html;charset=EUC-JP"> <META Http-Equiv="Refresh" Content="$sec;URL=$url"> </head> <body> <p><a href="index.html">index.html</a><p> </body> </html> !;

すると、全ての回答が全文表示されます。
noname#39970
noname#39970
回答No.1

JavaScriptはHTMLの一部だと考えた方が良いよ。 サーバ処理用として使いたいというのは無理。 headタグ内辺りに配置するしかない。

SANA_999
質問者

補足

以下のような記述ではダメですよね。。。 #!/usr/bin/perl print "Content-type: text/html\n\n"; print qq! <html> </script> <head> <script type="text/javascript"> <!-- //ユーザが設定する変数---------------------------------- var url = "http://172.16.150.60/"; //ジャンプ先のURLを指定 var moveTime = 2000; //移動までの時間をミリ秒で指定 //------------------------------------------------------ function jump(){ location.href = url; } setTimeout (jump, moveTime); //--> <title>指定秒後に別のページへジャンプ</title> <META Http-Equiv="Content-Type" Content="text/html;charset=EUC-JP"> </head> <body> <p><a href="index.html">index.html</a><p> </body> </html> !; javascript自体をprintか何かで表示させなければならないので しょうか。。。 教えて下さい。

すると、全ての回答が全文表示されます。