Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/78.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
jQuery-在keyup上仅显示一次加载图像_Jquery - Fatal编程技术网

jQuery-在keyup上仅显示一次加载图像

jQuery-在keyup上仅显示一次加载图像,jquery,Jquery,我有一个keyup函数来搜索表中的数据。我想使加载图像只显示一次。例如,如果用户键入“一”,则图像将只显示一次,直到结果出现为止 我可以在keyup功能上显示图像,但它将根据用户类型显示。例如,如果用户键入“一”,图像将显示3次。下面是我的代码示例 $("#search").keyup(function(){ var search = $("#search").val(); $("#loading").fadeIn(500); $.post('search_pr.php'

我有一个
keyup
函数来搜索表中的数据。我想使加载图像只显示一次。例如,如果用户键入“一”,则图像将只显示一次,直到结果出现为止

我可以在
keyup
功能上显示图像,但它将根据用户类型显示。例如,如果用户键入“一”,图像将显示3次。下面是我的代码示例

$("#search").keyup(function(){
    var search = $("#search").val();
    $("#loading").fadeIn(500);
    $.post('search_pr.php',
    {
        search : search
    })
    .done(function(data){
        $("#loading").fadeOut(500);
        $("#body").html(data);
    });  
});

使用全局变量设置附加元素的状态

var isTriggered = 0

$("#search").keyup(function(){
    if (isTriggered == 0) {
    isTriggered = 1;
    var search = $("#search").val();
    $("#loading").fadeIn(500);
    $.post('search_pr.php',
    {
        search : search
    })
    .done(function(data){
        $("#loading").fadeOut(500);
        $("#body").html(data);
    });  
}
});

您可以为此使用标志

$(函数(){
var load_img=假;
$(“#搜索”).keyup(函数(){
var search=$(“#search”).val();
如果(!load_img){
$(“#加载”).show();
}
load_img=search.length==0?false:true;
如果(search.length==0){
$(“#加载”).hide();
}
//剩下的代码放在这里
});
});
#加载{
显示:无;
}


谢谢您的帮助。很抱歉,我还在学习使用jQuery。我可以知道如何重置load_img或者您是否有任何参考。从一开始再次检查答案我更新了代码,这就是您所需要的。我想我可以得到+1,感谢重置标志,我们是否在更新答案的keyup功能后插入它,因为keyup不显示加载图像,但一旦我删除所有单词,图像就会出现。等等,我将为您创建一个演示!