• ベストアンサー

JavaScriptの変数にCGIの出力を入れたい。

呼ばれると文字"a"を出力するhttp://xxx/ret_a.cgiがあるとします。 JavaScriptの中で変数hogeに、このhttp://xxx/ret_a.cgiの出力を格納するにはどうしたらよいですか? http://xxx/ret_a.cgiの内容は以下のようなかんじです。 ------------------- ここから ------------------- #!/usr/local/bin/ruby puts "Content-Type:text/html\n\n" puts "<html>\n" puts "<head><title>test1</title></head>\n" puts "<body>\n" puts "a" puts "</body></html>\n" ------------------- ここまで ------------------- puts "a"だけだと、500 Internal Server Errorになってしまうので、 上記のようにしました。

質問者が選んだベストアンサー

  • ベストアンサー
  • steel_gray
  • ベストアンサー率66% (1052/1578)
回答No.1

a.cgi print "Content-Type: application/x-javascript\n\n"; print "hoge='a'\n"; a.cgiは <script type="text/javascript" src="a.cgi"></script> で呼び出します。 これで hoge='a' と、書かれた外部javascriptファイルを呼び出したのと同じ事になります。 rubyはわからないので勝手にperlで書きましたが要領はわかってもらえると思います。

kingfruits
質問者

補足

ご解答ありがとうございます。 ご回答頂いた方法で、データの受け渡しはできますね。 しかし、出題のhttp://xxx/ret_a.cgiは出来れば手を加えずに、 値を受け取るJavaScriptの側だけで対応できないでしょうか?

その他の回答 (1)

回答No.2

基本的にはANo.1さんで、中間にcgiかませる。 ret_aを呼び出して、その結果からaを取り出して、print "hoge='a'\n";するCGI。

関連するQ&A

専門家に質問してみよう