Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/428.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
Javascript Firefox中onkeyup侦听器的文本框中缺少字符_Javascript_Firefox_Onkeyup - Fatal编程技术网

Javascript Firefox中onkeyup侦听器的文本框中缺少字符

Javascript Firefox中onkeyup侦听器的文本框中缺少字符,javascript,firefox,onkeyup,Javascript,Firefox,Onkeyup,我有一个文本字段,用户可以使用它来搜索项目。附加了一个onkeyup侦听器,它根据输入的内容搜索数据库。在Chrome中,这很好,但在Firefox中存在延迟,快速打字机会在文本字段中看到缺少的字符。这是Firefox的问题还是有解决方法 为了大致了解我在代码中所做的工作,我有如下内容: HTML 可能使其异步,并具有某种控制,以便在一个请求仍在进行时不会触发它。在这种情况下,我认为这会更有意义,也可能解决你在Firefox上的问题 现在,如果有人很快打了很多信,你还是在发送不必要的请求 就像这

我有一个文本字段,用户可以使用它来搜索项目。附加了一个
onkeyup
侦听器,它根据输入的内容搜索数据库。在Chrome中,这很好,但在Firefox中存在延迟,快速打字机会在文本字段中看到缺少的字符。这是Firefox的问题还是有解决方法

为了大致了解我在代码中所做的工作,我有如下内容:

HTML
可能使其异步,并具有某种控制,以便在一个请求仍在进行时不会触发它。在这种情况下,我认为这会更有意义,也可能解决你在Firefox上的问题

现在,如果有人很快打了很多信,你还是在发送不必要的请求

就像这样:

//html file

<input type="text" onkeyup="makeRequest()">

//java script file

function makeRequest() {
  if(!req_called){
      req_called = true; 
      var xmlhttp = new XMLHttpRequest();
      xmlhttp.open("POST", url + parameters, true);
      xmlhttp.load = function(){
          req_called = false;
          return xmlhttp.responseText;

      }
      xmlhttp.send("#");

   }
}
//html文件
//java脚本文件
函数makeRequest(){
如果(!req_调用){
req_called=true;
var xmlhttp=new XMLHttpRequest();
open(“POST”,url+参数,true);
xmlhttp.load=函数(){
req_called=false;
返回xmlhttp.responseText;
}
xmlhttp.send(“#”);
}
}

也许可以尝试添加一些代码。。
function makeRequest() {
   var xmlhttp = new XMLHttpRequest();
   xmlhttp.open("POST", url + parameters, false);
   xmlhttp.send("#");
   return xmlhttp.responseText;
}
//html file

<input type="text" onkeyup="makeRequest()">

//java script file

function makeRequest() {
  if(!req_called){
      req_called = true; 
      var xmlhttp = new XMLHttpRequest();
      xmlhttp.open("POST", url + parameters, true);
      xmlhttp.load = function(){
          req_called = false;
          return xmlhttp.responseText;

      }
      xmlhttp.send("#");

   }
}