Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/253.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
Php 从文本字段捕获数据时,如何忽略自动完成值?_Php_Jquery_Mysql_Ajax_Autocomplete - Fatal编程技术网

Php 从文本字段捕获数据时,如何忽略自动完成值?

Php 从文本字段捕获数据时,如何忽略自动完成值?,php,jquery,mysql,ajax,autocomplete,Php,Jquery,Mysql,Ajax,Autocomplete,我最近在我的网站上实现了一个搜索框,它提供了自动完成关键字的良好结果。我想实现一个隐藏部分,以了解我的注册访问者搜索的搜索查询是什么 我在搜索框中添加了一个隐藏的用户名,当用户搜索任何内容时,名称和搜索查询将保存在另一个表中。由于自动完成,数据每秒保存一次;因此,如果有人搜索“笔记本电脑”,我们会得到: jQuery代码: $(“#搜索框”).keyup(函数(){ //其他事情 }); 如何仅保存最终搜索项而忽略自动完成值?您应该使用而不是.keyup() 这样,当控件失去焦点时提交数据,而不

我最近在我的网站上实现了一个搜索框,它提供了自动完成关键字的良好结果。我想实现一个隐藏部分,以了解我的注册访问者搜索的搜索查询是什么

我在搜索框中添加了一个隐藏的用户名,当用户搜索任何内容时,名称和搜索查询将保存在另一个表中。由于自动完成,数据每秒保存一次;因此,如果有人搜索“笔记本电脑”,我们会得到:

jQuery代码:

$(“#搜索框”).keyup(函数(){
//其他事情
});

如何仅保存最终搜索项而忽略自动完成值?

您应该使用而不是
.keyup()

这样,当控件失去焦点时提交数据,而不是每次按下一个键。

您应该使用而不是
.keyup()


这样,当控件失去焦点时提交数据,而不是每次按下键时提交数据。

只需按照以下步骤操作即可

  • 在隐藏字段中保存数据
  • 更新keyup上的隐藏字段
  • 当用户焦点从搜索字段移出时保存查询
  • Javascript代码 html代码
    只需按照以下步骤操作即可

  • 在隐藏字段中保存数据
  • 更新keyup上的隐藏字段
  • 当用户焦点从搜索字段移出时保存查询
  • Javascript代码 html代码
    
    
    我会在每次按键时设置一个超时(比如说3-5秒),超时应该在每次按键时重置。然后,只有在3-5秒没有输入后才能保存。(我会用5-10保存搜索查询,用3保存实际搜索)@x4rf41这是个糟糕的解决方案。在服务器端这样做怎么样?假设您从自己的源中提取数据..旁注:您真的需要每次发送用户名吗?如果他们登录,您难道没有访问权限吗?好的。。。。。我只是检查了Danny的答案,但没有解决,,,,我会在每个按键上设置一个超时(比如说3-5秒),超时应该在每个按键上重置。然后,只有在3-5秒没有输入后才能保存。(我会用5-10保存搜索查询,用3保存实际搜索)@x4rf41这是个糟糕的解决方案。在服务器端这样做怎么样?假设您从自己的源中提取数据..旁注:您真的需要每次发送用户名吗?如果他们登录,您难道没有访问权限吗?好的。。。。。我只是检查了Danny的答案,但没有解决,,,,,这是不可能的,除非你提交的数据带有你没有发布的代码。是否使用
    $(“#搜索框”)提交数据。keyup(function(){
    ?您仍然可以使用keyup进行搜索,但不在该点保存,然后保存onBlur。这是不可能的,除非您使用尚未发布的代码提交数据。是否使用
    $(“#搜索框”)提交数据。keyup(function()){
    ?您仍然可以使用keyup进行搜索,但不要在该点保存,然后保存onBlur。
    **ID  username  Searchdata srtime**  
    1    user1234   L  1372513199            
    2    user1234   La 1372513200  
    3    user1234   Lap 1372513201   
    4    user1234   Lapt 1372513202   
    5    user1234   Lapto 1372513203  
    6    user1234   Laptop 1372513204
    
    $('#search').keyup(function(){  
        $('#searchQuery').val($('#search').val());
    });
    
    $('#search').focusout(function(){  
         alert($('#searchQuery').val()); //this will return final query
     });
    
    <input type="text" id="search">
    <input type="hidden" id="searchQuery">