- ベストアンサー
ボタンに複数機能を持たせられるか?
javascriptのフォームで送信ボタン1つに複数の機能を持たせることは出来ますか? 簡単なアンケートのページで、ボタンを押したら (1)メールが送信される (2)送信者に送信されたメールの内容を表示する このように2つの事を1つのボタンを押したら、一度に実行したいのですが、 できますでしょうか? javascriptを学び始めてまだ浅い為、詳しく回答いただけると助かります。 どうかよろしくお願いします。
- みんなの回答 (4)
- 専門家の回答
質問者が選んだベストアンサー
>というのだと、送信と表示をさせたい場合、どの様にa・bに記述すればいいのでしょうか? だからこれはJavaScriptの実行方法であって今回の話では関係ないよ。 メール送信を実行しているCGIをいじる必要がある。 CGIはリクエストを受けてサーバにて処理を実行して表示用のHTMLを返す。 今回はリクエストを受けてサーバにてメール送信を実行して表示用のHTMLを返す。 という仕様にすればお望みどおりの動きになるわけ。 JavaScriptとはいったん切り離して。
その他の回答 (3)
- t_ohta
- ベストアンサー率38% (5253/13739)
たぶん、質問者さんがやりたいと思っていることにはJavaScriptは必要なく、メール送信のCGIについて調べられた方がいいと思います。 CGIを使えば (1) (2) 共に送信ボタンを1回押すだけで行えます。
お礼
ありがとうございます。 CGIについて勉強してみます。 ありがとうございました。
- yambejp
- ベストアンサー率51% (3827/7415)
#1さんが回答しているとおり javascriptでメールを送信すること自体が無理です。 前提条件がくずれている以上(2)に言及する必要はありません。
お礼
ありがとうございます。 CGIの勉強もしようと思います。
- Taiyonoshizuku
- ベストアンサー率37% (183/489)
>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に記述すればいいのでしょうか? 全くの初心者で大変申し訳ありません。 教えていただければ助かります。 よろしくお願いします。
お礼
おそくなりましてすみません。 ありがとうございます。 CGIなんですね。 そちらも勉強してみます。 ありがとうございました。