入力フィールドとボタンを作成し、ボタンを押すたびに入力フィールドが表示・非表示を繰り返すようにしたいと思っています。
入力フィールドが表示されているときにはボタンは"hide"、非表示の時は"show"が表示されている仕様です。
<div id="input"><input type="text" name="something"></div>
<input type="button" id="button" value="hide">
以下のようにjQueryを組んでみました。
$(document).ready(function(){
if($("#button").attr("value") == "hide"){
$("#button").click(function(){
alert("VALUE=" + $("#button").attr("value")),
$("#input").children().hide(),
$("#button").attr("value", "show");
});
} else if($("#button").attr("value") == "show"){
$("#button").click(function(){
alert("VALUE=" + $("#button").attr("value")),
$("#input").children().show(),
$("#button").attr("value", "hide");
});
}
});
まず、hideボタンを押すとhideのアラートが出てフィールドが非表示になり、showというボタンのみが残ります。
次にshowボタンを押すと、showのアラートは表示されますが、フィールドが再表示されず、ボタンもshowのままです。
elseのalertまで行っているのにその後が機能しないのは何故でしょうか?
No.2ベストアンサー
- 回答日時:
組んでみたよ。
参考までにどうぞ。$('#button').click(function(){
$(this).val($('#input').children().toggle().is(':visible') ? 'hide':'show');
});
ここまでシンプルにできるよ。
#buttonがクリックされたら
#inputの子要素の表示非表示を切り替えて(toggle())
要素が表示だったらvalueにhide
要素が非表示だったらvalueにshow
こんな動きになってる。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- JavaScript javascriptで移動ボタンを押した際に遷移するボタンを追記したい 1 2022/11/29 03:02
- JavaScript フォームが空欄の時にフォームの外をクリックすると、エラーが出るコードを調べています。 1 2023/06/25 11:51
- JavaScript コードレビューをお願いします。 1 2022/07/16 05:38
- JavaScript ①入力フォーム→②確認表示画面→③送信完了画面のコードを書いているのです、 入力フォームから受け取っ 2 2022/05/10 16:45
- JavaScript 入力フォームの javascript で メールアドレスの正規チェックをを行い、ボタンをクリックして 2 2022/04/27 16:06
- HTML・CSS ボタンをクリックした時に、入力フォームのすぐ下部に、「入力欄が空白です」というテキストメッセージが表 1 2022/04/27 16:25
- JavaScript clear機能を失わずにファイルアップロード機能を作成したい 3 2023/06/10 16:12
- JavaScript javascriptのちょっとした動作不良(原因は突き止めたのですが) 1 2023/06/15 19:58
- JavaScript プログラムがうまく動きませんレビューお願いします 1 2022/07/10 05:08
- JavaScript Javascriptが機能せず原因が分からないので教えて頂きたいです 3 2023/06/04 14:50
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
javaScriptの変数をJavaの変数...
-
クリックさせたいが、click()が...
-
onchangeイベントを強制的に発...
-
formのfileの値をhiddenでも持...
-
onClickがinput type="image"だ...
-
jQueryでshow/hideが上手く行か...
-
追加ボタンを押した際に ok ボ...
-
iOSのみダブルタップが必要
-
return trueとreturn falseの用...
-
HTMLファイル同士での値渡し
-
Selectの中身をfor文で入れる
-
VBScriptでHTMLのセレクトボッ...
-
hiddenのvalueの値を変えたい
-
画面表示とともに、テーブルの...
-
VBSでブラウザ上のテキストボッ...
-
テーブルの行数を可変長にした...
-
value内に変数を入れたい
-
3桁区切りのカンマをつけたい...
-
背景色を変えて未入力チェック...
-
チェックボックスのON/OFFでVal...
マンスリーランキングこのカテゴリの人気マンスリー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のボタンを複数う使うには
-
オンクリックで現在時刻の取得→...
おすすめ情報