показать элемент, если ввод текста не пустой, используя jQuery - PullRequest
1 голос
/ 23 мая 2011

Хорошо, значит, я получил код и все такое. Это немного странно, поскольку, если форма пуста, в форме изображения отображается кнопка очистки, например: (x)

Вот скрипт, при загрузке страницы jQuery фокусируется на поле ввода текста и одновременно отображает класс (x) clear. Чего я хочу добиться, так это.

При загрузке страницы jQuery по-прежнему фокусируется на поле ввода текста, однако он не отображает чистый класс (x), но отображает его только в том случае, если в текстовое поле введен хотя бы 1 символ, в противном случае он не отображается. 1005 *

вот текущий код

$(document).ready(function() {
             $('#ui_query').focus();
        });

        $('#ui_query').focus(function() {
             $('.clear-helper').css('opacity','0.9999');
        });

        $(document).focusout(function() {
             $('.clear-helper').css('opacity','0.3333');
        });



        (function ($, undefined) {
        $.fn.clearable = function () {
        var $this = this;
        $this.wrap('<div class="clear-holder" />');
        var helper = $('<span class="clear-helper"></span>');
        $this.parent().append(helper);
        helper.click(function(){
            $this.val("");
            $('#ui_query').focus();
        });
        };      
        })(jQuery);

        $("#ui_query").clearable();

1 Ответ

0 голосов
/ 23 мая 2011

Вы можете использовать селектор атрибута attribute-not-equals для целевого ввода с непустыми значениями:

$('#ui_query[value!=""]').doSomething();

Если вы не хотите, чтобы символ пробела считался как«что-то», то вы можете сделать:

if($.trim($('#ui_query').val()) !== "") {
    $('.clear-helper').css('opacity','0.9999');
}
...