質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.50%
JavaScript

JavaScriptは、プログラミング言語のひとつです。ネットスケープコミュニケーションズで開発されました。 開発当初はLiveScriptと呼ばれていましたが、業務提携していたサン・マイクロシステムズが開発したJavaが脚光を浴びていたことから、JavaScriptと改名されました。 動きのあるWebページを作ることを目的に開発されたもので、主要なWebブラウザのほとんどに搭載されています。

Q&A

解決済

3回答

2442閲覧

valueの有無で要素を出したり消したりしたい

massiveGorilla

総合スコア21

JavaScript

JavaScriptは、プログラミング言語のひとつです。ネットスケープコミュニケーションズで開発されました。 開発当初はLiveScriptと呼ばれていましたが、業務提携していたサン・マイクロシステムズが開発したJavaが脚光を浴びていたことから、JavaScriptと改名されました。 動きのあるWebページを作ることを目的に開発されたもので、主要なWebブラウザのほとんどに搭載されています。

0グッド

0クリップ

投稿2017/09/12 13:26

編集2017/09/12 13:28

下記でテスト中なのですが、
#detaのvaluに文字列を挿入しても#exampleが表示されてくれません。。
どなたかお分かりの方いらっしゃいませんでしょうか。

html

1<input type="hidden" id="deta" value=""> 2<div id="example">example</div>

javascript

1$(function(){ 2function hiddenCheck(){ 3 detaCheck = $("#deta").val().length; 4 if(detaCheck == 0){ 5 $("#example").hide(); 6 }else{ 7 $("#example").show(); 8 } 9}; 10 hiddenCheck(); 11 12 $("#deta").change(function(){ 13 hiddenCheck(); 14 }); 15});

追記
ちなみに、
input[value=""] + div {
display: none;
}
は、Edgeで動きませんでした。。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答3

0

ベストアンサー

<iunput type="hidden">でなくてもそうなのですが、valueをプログラム的に操作した際にはchangeイベントは起きません

hiddenを操作する側で対応が必要になります。

投稿2017/09/12 13:43

編集2017/09/12 13:44
maisumakun

総合スコア145123

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

0

javascript

1$('#btn').on('click', function(){ 2$('#deta').val(image); //hiddenのvalueを操作 3hiddenCheck1(); 4

ご指摘の通りこれでイケました!!ありがとうございます!

投稿2017/09/13 01:09

massiveGorilla

総合スコア21

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

yambejp

2017/09/13 01:24

それじゃ#detaにchangeを設定している意味がないのでは?
massiveGorilla

2017/09/13 01:53

ご回答いただきありがとうございます。 $("#deta").change(function(){ hiddenCheck(); }); は削除しました。
guest

0

triggerと併用します

javascript

1$(function(){ 2 $("#deta").val("a");//detaをカラにして 3 hiddenCheck(); //チェックをするとexampleは隠れる 4 $("#deta").change(function(){ 5 hiddenCheck(); 6 }); 7 $("#deta").val("a").trigger('change');//dataに値をいれてchangeイベントを発動 8 9});

投稿2017/09/13 00:39

yambejp

総合スコア114585

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.50%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問