如果使用jQuery将文本输入设置为空,则显示一个元素

时间:2011-05-23 16:52:51

标签: jquery textinput cleartype

好的,所以我得到了元素编码等。它有点奇怪,因为如果表单是空的,则清除按钮以图像形式显示ex:(x)

这是脚本,在页面加载时,jQuery关注文本输入字段,同时显示(x)clear类。我希望实现的是这一点。

在页面加载时,jQuery仍然关注文本输入字段,但是它不会显示清晰的类(x),但只有在文本字段中输入至少1个字符时才会显示它,而不会显示其他视图。< / p>

这是当前代码

$(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 :(得分:0)

您可以使用attribute-not-equals属性选择器定位具有非空值的输入:

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

如果你不想要一个空格字符算作&#34;某些东西&#34;那么你可以这样做:

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