初心者で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>
どうかおしえてください。
よろしくお願いします。
No.1ベストアンサー
- 回答日時:
こんな感じでしょうか?
<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>
No.2
- 回答日時:
おおきく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>
ただ、最初に(なにもない)が大好きです・・・と表示されるのは
なかなかみっともないので、何か処理が必要ですね
詳しくご説明ありがとうございました。
まだまだ理解不足で、色々と間違っているところがあり、
ご指摘を受け、とても勉強になりました。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- JavaScript javascriptのちょっとした動作不良(原因は突き止めたのですが) 1 2023/06/15 19:58
- JavaScript コードレビューをお願いします。 1 2022/07/16 05:38
- JavaScript 1日1回引けるJavaScriptおみくじについて 1 2022/12/12 22:28
- JavaScript 入力フォームの javascript で メールアドレスの正規チェックをを行い、ボタンをクリックして 2 2022/04/27 16:06
- JavaScript jQueryでのドラッグアンドドロップについて 1 2022/07/07 21:04
- JavaScript ①入力フォーム→②確認表示画面→③送信完了画面のコードを書いているのです、 入力フォームから受け取っ 2 2022/05/10 16:45
- JavaScript javascript作成してます。ラジオボタンで判定するコードを書いてます。 1 2023/07/18 11:03
- HTML・CSS ボタンをクリックした時に、入力フォームのすぐ下部に、「入力欄が空白です」というテキストメッセージが表 1 2022/04/27 16:25
- JavaScript clear機能を失わずにファイルアップロード機能を作成したい 3 2023/06/10 16:12
- JavaScript フォームが空欄の時にフォームの外をクリックすると、エラーが出るコードを調べています。 1 2023/06/25 11:51
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
onchangeイベントを強制的に発...
-
javaScriptの変数をJavaの変数...
-
javascript教えてください
-
SendKeys()が一番最後に実行さ...
-
コードレビューをお願いします。
-
小窓が残像を残して移動
-
JQueryでfunctionに引数としてI...
-
javascriptでtextareaに文字列...
-
クリック→テキストボックスに追加
-
クリックさせたいが、click()が...
-
innerHTML内では改行は禁止?
-
formのfileの値をhiddenでも持...
-
JSPファイルにJavaScriptを埋め...
-
テキストフィールド未入力の場...
-
ひとつのボタンでタイマーを動...
-
onClickがinput type="image"だ...
-
INPUTでデフォルト値(数...
-
データバインド機能でand検索を...
-
URL 判定
-
return trueとreturn falseの用...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
onchangeイベントを強制的に発...
-
iOSのみダブルタップが必要
-
onclickが動作しない
-
追加ボタンを押した際に ok ボ...
-
ボタンかリンクをクリックする...
-
innerHTML内では改行は禁止?
-
クリックさせたいが、click()が...
-
javaScriptの変数をJavaの変数...
-
formのfileの値をhiddenでも持...
-
JavascriptでDOM-based XSSの発...
-
クリックでテーブル内の背景色...
-
VB.NETで<Input>タグ、<text...
-
jQueryで設定したイベントハン...
-
開いた子ウィンドウにあるボタ...
-
javascriptで作成されたテーブ...
-
HTMLのテキストボックスへのド...
-
JavaScriptのfileオブジェクト...
-
テキストフィールド未入力の場...
-
オンクリックで現在時刻の取得→...
-
JSのボタンを複数う使うには
おすすめ情報