このテキスト フィールドが空かどうかを検出し、それに基づいてコードを実行したいと考えています。
質問:コードを 1 回だけ実行するにはどうすればよいでしょうか。focus
empty
またはであるさまざまな状態not empty
。
さらに詳しく説明するには:
(これらの jsfiddle の最も重要な部分はコンソールに表示されます。)
これは、キーアップするたびにコードを実行するコードのjsfiddleです(私が望むものではありません。初期コードのみです。)。
$('input').on("keyup", function() { var val = $(this).attr('value'), previous = $(this).prev(); if ( val === '' ) { console.log('Empty'); } else if ( val !== '' ) { console.log('Text'); } });
これは、フォーカスごとにコードを実行するコードのjsfiddleです(これは、私が望むものに多少近いです)。
まだ不足していて、私がやり遂げることができないように見えるのは、基本的に、その1つのフォーカス中に状態が変化するたびに、コードをもう一度実行することです。どうすればそれができますか?
$('input').on("focus", function() { $('input').one("keyup", function() { var val = $(this).attr('value'), previous = $(this).prev(); if ( val === '' ) { console.log('Empty'); } else if ( val !== '' ) { console.log('Text'); } }); });