dポイントプレゼントキャンペーン実施中!

「はい」「いいえ」「その他」などのリンク(<a>タグ)があり、そのうちの一つをクリックすると、
「投票完了!」と表示されるようなJavaScriptプログラムを作れる方いませんか?

例:「はい いいえ その他」とリンクで表示されていて、「はい」をクリックすると、すべてが消え「投票完了!」と表示される。

よろしくお願いします!

P.S.これは必須ではありませんが、指定されたメールアドレスに送信できるようにしたいです。Javaじゃなくても、PHPとかでも結構です。

A 回答 (3件)

#1さんの回答そのままですが・・・



---HTML-----
<span id="test">
 <a href="#" onClick="change(document.getElementById('test'));">はい</a>
 <a href="#" onClick="change(this);">いいえ</a>
 <a href="#" onClick="change(this);">その他</a>
</span>

----JavaScript-----
function change(hoge){
 hoge.outerHTML = "投票完了!";
 return false;
}

*質問文を尊重して<a>タグにしてありますが、リンクは無効です。
*「いいえ」、「その他」はそれぞれが、「はい」は全部が「投票完了!」に置き換わります。
*簡略化のため、outerHTMLでタグごと置き換えてますが、修正したほうがいいかも。


メール送信はブラウザのmailtoの機能の利用程度ではだめなのでしょうか?
表示しないフォームを作成しておいて、Scriptからsubmitすれば、多少は近いものになりそう。
ちゃんとやるなら、サーバーに送って、サーバーからメールすることになるでしょう。
<参考>
  http://www.trancedive.com/contents/reference/jav …

この回答への補足

ありがとうございます。
やってみたのですが、

はい  いいえ  その他 function change(hoge){  hoge.outerHTML = "投票完了!";  return false; }

はい・いいえ・その他がリンクになって表示されたのですが、
あとのJavascriptタグは丸出しになっています。
どうすればよいでしょうか?

補足日時:2008/07/16 19:37
    • good
    • 0
この回答へのお礼

すいません!記述が間違っていました!

<script language="javascript">

を追加するのを忘れてました!

やっと行きました!ありがとうございます!

お礼日時:2008/07/26 12:28

JavaScriptはクライアントサイドスクリプティング技術なので


サーバ側の動作であるメールを送信するなどの機能を実現させることは
できません。
(Ajaxを使用すればできないことはありませんがどちらにしても
CGIやPHPなどのサーバサイドで動作する外部スクリプトが必須になります)

あと、JavaとJavaScriptを混同しないようにしてください。
まったくの別物です。

http://ja.wikipedia.org/wiki/Java
http://ja.wikipedia.org/wiki/JavaScript

リンクをクリックした時はonclickイベントが発生するのでそれで
操作を行います。
この辺りは [javascript onclick] などのキーワードでググったり
ヤフったりして調べればすぐに出てくると思います。
    • good
    • 0

一例ですが、



<span id="aaa">
<span onClick="change('はい')">はい</span>
<span onClick="change('いいえ')">いいえ</span>
<span onClick="change('その他')">その他</span>
</span>

と、はい、いいえ、その他において、マウスクリック時のアクションを拾って(onClick=~)、
全体をID指定しておきます。

そこから呼ばれたスクリプト(例ではchange)において、
 aaa.innerHTML = "投票完了!" ;
といった記述をしておけばいいのかなぁ。たぶん…
実際に試してないので微妙かもしれません。
また、メールを送るなどには対応できないと思います。
    • good
    • 0

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