重要なお知らせ

「教えて! goo」は2025年9月17日(水)をもちまして、サービスを終了いたします。詳細はこちら>

電子書籍の厳選無料作品が豊富!

はじめまして、よろしくお願いします。

呼び出すとある文字列を返すCGIがあるとして、呼び出すときは
<button onclick="location.href=xxx.cgi"
など何とかできるのですが、リターンの受け方がわかりません。
どこにどう戻ってくるのか見当がつきません。

調べてみましたがjavascriptではできるのかどうかすらよくわからなかったので、可能か不可能か、可能ならばその簡単な方法を教えていただけると嬉しいです。よろしくお願いします。

A 回答 (2件)

コードレビューでお願いします。



<iframe src="about:blank" width="0" height="0" id="ifr" name="ifr" style="display:none;"></iframe>
<button type="button" onclick="ifr.src='xxx.cgi?q=aiueo';">click</button>
<script>
function Recieve(value){
alert(value);
}
</script>

xxx.cgi
#!/usr/bin/perl
use CGI;
$c=new CGI;
$q=$c->param('q');

print <<_HTML_;
Content-Type: text/html; charset=utf-8

<body>
<script>parent.Recieve('受信データは$qです');</script>
<p>受信完了$q</p>
</body>
_HTML_
exit;


Ajaxを使うなら、XMLHttpRequestかActiveXObjectを使用してください。
Ajaxライブラリを使うなら、そのライブラリの使用法に従ってください。
prototype.jsならajaxrequestではなくAjax.Requestなどです。
    • good
    • 0
この回答へのお礼

ご回答ありがとうございます。

XMLHttpRequestを使って実現いたしました。
サンプルと助言ありがとうございました。

お礼日時:2008/06/24 22:24

>リターンの受け方がわかりません。



たんにページが変遷しているので、リターンを受けられるとは思えませんが?
具体的にどのような結果を希望しているのか実例を書いた方がいいかも。

xxx.cgiからデータをとってきて表示したいとかだとajax。
今のページのデータをxxx.cgi上でつかいたいならformでの受け渡しか
セッション処理などになるでしょう

この回答への補足

ご回答ありがとうございます。

ajaxということでしたがajaxrequestというものを使えばよいのでしょうか?

補足日時:2008/06/23 23:16
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!