检测用户是否输入了任何/删除的输入jQuery

时间:2013-11-25 19:24:11

标签: javascript jquery html

我有一个输入字段,用户可以输入文字,当他们输入内容时,如果有效,则会显示图像。输入错误的文字也是如此。

我想在输入字段中没有任何内容时更改/删除图像。

这是我的代码,但它似乎不起作用:

$('#input_link').on('mouseout', function(){
    if($.trim($('#input_link').val().length = 0)){
        $('#status_image').attr('src', 'images/link_related/stand_by.png');
    }
    });

2 个答案:

答案 0 :(得分:4)

尝试:

   $('#input_link').on('mouseout', function(){
     if(!$.trim(this.value).length){
         $('#status_image').attr('src', 'images/link_related/stand_by.png');
     }
   });

您的修剪支架不合适,您使用的是赋值运算符而不是比较。我认为mouseout可能不是一个很好的事件来做你正在做的事情。根据您想要显示图像的时间,使用keyupchange事件。

这可能是你想要实现的目标。

$('#input_link').on('input keyup paste', function () {
    var hasValue = $.trim(this.value).length;
    $('#status_image').attr('src', function () {
        return hasValue ? 'http://placehold.it/20/00ff00' : 'http://placehold.it/20/ff0000';
    });
});

<强> Demo

答案 1 :(得分:3)

使用=====来比较事物,

if($.trim($('#input_link').val().length == 0)){'

试试这个,

$('#input_link').on('mouseout', function(){
    if($.trim($('#input_link').val()).length == 0){
        $('#status_image').attr('src', 'images/link_related/stand_by.png');
    }
    });