首页 > 解决方案 > 在用户仍在键入时异步获取输入值

问题描述

我有一个这样的输入字段

 <input type="text" placeholder="Search" id="search" />

并希望在用户仍在键入时阅读内容,然后在搜索字符串匹配时显示数据。我想我需要一个异步函数,但我不知道如何继续处理字符串。

async function readSearchString(){
return document.getElementById("search").value;
}


function processString(cell, string)
{
   // Keep doing this
   var searchString = await readSearchString();
   if (cell.includes(searchString))
   {
       cell.visibility = "hidden";
   }  
}

我是否需要以某种方式在无限循环中运行整个函数以不断获取用户输入?

标签: javascripthtml

解决方案


您可以根据需要使用输入事件,如,onchange等。onkeyuponkeydown

function processString()
{
   var searchString = document.getElementById("search").value;
   console.log('Search key :'+ searchString);
   // You can do your search code here
   /* 
   if (cell.includes(searchString))
   {
       cell.visibility = "hidden";
   }
   */
}
<input type="text" placeholder="Search" id="search"  onkeyup="processString()">


推荐阅读