我想检测这个文本字段是否为空,然后基于它运行一些代码。
问题是:我怎样才能只运行一次代码......然后每次文本字段的状态在一个期间发生变化时再次运行它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,每个焦点执行一次代码(这有点接近我想要的)。
它仍然缺少的,我似乎无法完成的,是基本上每次在那个焦点期间状态发生变化时再次运行代码。我怎么能那样做?
$('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'); } }); });