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

javascriptのフォームで送信ボタン1つに複数の機能を持たせることは出来ますか?


簡単なアンケートのページで、ボタンを押したら
(1)メールが送信される
(2)送信者に送信されたメールの内容を表示する

このように2つの事を1つのボタンを押したら、一度に実行したいのですが、
できますでしょうか?

javascriptを学び始めてまだ浅い為、詳しく回答いただけると助かります。
どうかよろしくお願いします。

A 回答 (4件)

>というのだと、送信と表示をさせたい場合、どの様にa・bに記述すればいいのでしょうか?


だからこれはJavaScriptの実行方法であって今回の話では関係ないよ。

メール送信を実行しているCGIをいじる必要がある。

CGIはリクエストを受けてサーバにて処理を実行して表示用のHTMLを返す。

今回はリクエストを受けてサーバにてメール送信を実行して表示用のHTMLを返す。
という仕様にすればお望みどおりの動きになるわけ。

JavaScriptとはいったん切り離して。
    • good
    • 0
この回答へのお礼

おそくなりましてすみません。
ありがとうございます。
CGIなんですね。
そちらも勉強してみます。
ありがとうございました。

お礼日時:2013/04/04 13:30

たぶん、質問者さんがやりたいと思っていることにはJavaScriptは必要なく、メール送信のCGIについて調べられた方がいいと思います。


CGIを使えば (1) (2) 共に送信ボタンを1回押すだけで行えます。
    • good
    • 0
この回答へのお礼

ありがとうございます。
CGIについて勉強してみます。
ありがとうございました。

お礼日時:2013/04/04 13:32

#1さんが回答しているとおり



javascriptでメールを送信すること自体が無理です。
前提条件がくずれている以上(2)に言及する必要はありません。
    • good
    • 0
この回答へのお礼

ありがとうございます。
CGIの勉強もしようと思います。

お礼日時:2013/04/04 13:31

>javascriptのフォームで


JavaScriptのフォームってどんなフォーム?

メールが送信されるって何を使って送るの?

メーラーが立ち上がるタイプなら無理。


サーバ側で処理するのであれば可能。というかJavaScriptでやる話ではない。

「送信ボタン」を押下→JavaScriptで内容をチェックしsubmit→送信内容を受け取りメールの送信を実行→送信内容を画面に表示する


一度に実行すること自体は可能だけど今回の話はちょっと違う気がする。


onclick="a();b();"ってやればa()が実行されてb()が実行される。

innerHTMLなんかを使って入力内容を画面上に表示することは可能だけど、どっちにしろどうやってメールを送るかによって話が変わる。
というか、メールを送るならサーバ側でやるのが普通なので

この回答への補足

Taiyonoshizuku 様

早速の回答ありがとうございます。
すみません、説明不足で・・・。

メーラーが立ち上がるタイプではないです。
http://www.red.oit-net.jp/tatsuya/java/mail.htm
↑ここを参考に作成しているのですが、ボタンを押した時に確認画面を出してから、「はい」のボタンを押して送信するのではなく、
一度押したら完了にしたいです。

>onclick="a();b();"ってやればa()が実行されてb()が実行される。

というのだと、送信と表示をさせたい場合、どの様にa・bに記述すればいいのでしょうか?

全くの初心者で大変申し訳ありません。
教えていただければ助かります。
よろしくお願いします。

補足日時:2013/04/03 17:05
    • good
    • 0
この回答へのお礼

ありがとうございます。

お礼日時:2013/04/05 13:32

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