アプリ版:「スタンプのみでお礼する」機能のリリースについて

初心者でif構文がよくわからず質問させてください。
下記のようなボタンをつくり、
<form action="#">
<input type="button" value="うさぎ" id="txt" onclick="aGetElementById()" />
<input type="button" value="とり" id="txt" onclick=b"GetElementById()" />
</form>

ボタンをクリックして、
<div><span id="box"></span>が大好きです。</div>
のspanの中にvalue名(うさぎ・とり)を表示させ、『「value名」が大好きです。』と表示させたいのです。

Javascriptを下記のように書いてみたのですが、テキスト表示の切り替えがうまくいきません。
<script>
<!--
function aGetElementById(){
var text=document.getElementById("txt");
var box=document.getElementById("box");
box.innerHTML=txt.value;
}
function bGetElementById(){
var text=document.getElementById("txt");
var box=document.getElementById("box");
box.innerHTML=txt.value;
}
-->
</script>

どうかおしえてください。
よろしくお願いします。

A 回答 (2件)

こんな感じでしょうか?



<html>
<script type="text/javascript">
function hoge(v){
document.getElementById('box').innerHTML=v;
}
</script>
<body>
<form action="#">
<input type="button" value="うさぎ" id="txt" onclick="hoge(this.value)" />
<input type="button" value="とり" id="txt" onclick="hoge(this.value)" />
<p><div><span id="box"></span>が大好きです。</div></p>
</form>
</body>
</html>
    • good
    • 0
この回答へのお礼

まだまだ、javascriptわかってないみたいですね。
もっと勉強します!
どうもありがとうございした。

お礼日時:2009/01/26 17:28

おおきく3つ間違いがあります。



1.var text=・・・で変数textを指定していますが、代入時にはtxtとtypoしている
2.とりの方の処理がnclick=b"GetElementById()"と文法ミスをしている
3.idのtxtがユニークではないため競合している。

そもそもfunctionをわける必要はなさそうなので、以下のようにすれば
解決します。
<script>
function setBox(obj){
var box=document.getElementById("box");
box.innerHTML=obj.value;
}
</script>
<form action="#">
<input type="button" value="うさぎ" onclick="setBox(this)" />
<input type="button" value="とり" onclick="setBox(this)" />
</form>
<div><span id="box"></span>が大好きです。</div>

ただ、最初に(なにもない)が大好きです・・・と表示されるのは
なかなかみっともないので、何か処理が必要ですね
    • good
    • 0
この回答へのお礼

詳しくご説明ありがとうございました。
まだまだ理解不足で、色々と間違っているところがあり、
ご指摘を受け、とても勉強になりました。

お礼日時:2009/01/26 17:30

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