• 締切済み

ボタン無しでフォーム内容送信

<form name="regist" action="bbs.cgi" method="POST"> <input type="hidden" name="mode value="admin"> <textarea name=comment cols=50 rows=5 wrap=soft>コメント</textarea> <input type="submit" value="ボタン"> </form> 通常はボタンをクリックして移動しますが、送信ボタンを使わずに、bbs.cgiを表示しただけでフォーム内データを送信できればと考えています。どのようにすればいいのでしょうか。

みんなの回答

  • venzou
  • ベストアンサー率71% (311/435)
回答No.3

>出来ればJavaScriptが無効のブラウザでも動作するように、 Perlからブラウザを経由せず、直接POSTも出来ますよ。 参考にどうぞ。 http://digit.que.ne.jp/work/index.cgi?Perl%E3%83%A2%E3%82%B8%E3%83%A5%E3%83%BC%E3%83%AB%2FLWP#i5

  • G-sun
  • ベストアンサー率66% (2/3)
回答No.2

一部誤解して解釈しているかもしれませんが、 この例ですと、テキストエリアにコメントを入力するようになって いますが、このフォームのページが表示されたと同時にボタンを 押したことにしたいという解釈になっています。 求めている動作は、コメントに何か入力したら勝手にボタンを押す 動作になって欲しいということでしょうか? コメント欄はテキスト入力なので、どの時点でボタンを押すかは 自動では判断できないと思います。 ですので、コメント欄からフォーカスが移動したら、ボタンを押したこと にしたいという動作になると思います。 Javascriptのfocusあたりを参照すれば可能かと思います。

cocolink
質問者

お礼

参考意見を有難うございます。ご指摘いただきました通り、質問例がおかしかったです。テキストエリアではなく、<INPUT type="hidden" name="" value="">でした。ANo.1様に教えていただいた方法でうまくいきましたが、出来ればJavaScriptが無効のブラウザでも動作するように、Perlで、form内の<INPUT type="hidden" name="" value="">データをボタンを使わず、ページを表示させただけで転送できるようにと考えております。

  • venzou
  • ベストアンサー率71% (311/435)
回答No.1

JavaScript使えばこんな感じで可能だと思います。 <html> <head> <script language="JavaScript"><!-- function start() { document.forms.regist.submit(); } // --></script> </head> <body onload="start()"> <form name="regist" action="bbs.cgi" method="POST"> <input type="hidden" name="mode" value="admin"> <textarea name="comment" cols="50" rows="5" wrap="soft">コメント</textarea> <input type="submit" value="ボタン"> </form> </body> </html>

cocolink
質問者

お礼

ご回答有難うございます。おかげさまで解決しました。

関連するQ&A

専門家に質問してみよう