首页 > 解决方案 > 如何将 AJAX 中的数据返回到 keyup 事件中

问题描述

我已经创建了 AJAX 请求。在这个请求中,我得到了两个数组,我想在 keyup 事件中有这个 AJAX 请求,在这个事件中,我想继续使用这两个数组。

要求:

ajax.onreadystatechange = function() {
  if (ajax.readyState < 4) {
    return;
  }
  if (ajax.status !== 200) {
    return;
  }
  if (ajax.readyState === 4) {
    data = ajax.responseText;
    x = data.slice(0, data.indexOf("|"));
    y = x.replace(/"/g, "");
    z = y.replace(/[\[\]]+/g, "");
    let stopwords = z.split(",");
    a = data.slice(data.indexOf("|") + 1);
    let terms = JSON.parse(a);
  }
};
ajax.open("GET", search_x.ajaxurl + "?action=search_terms", true);
ajax.setRequestHeader("Content-Type", "application/json", "charset= UTF-8");
ajax.send();

事件

searchForm.addEventListener("keyup", e => {
  //work with stopwords and terms
});

标签: javascriptajax

解决方案


您需要将 keyup 事件侦听器添加到您的搜索框

<input id="searchBox" onkeyup="return getSuccessOutput()" placeholder="Search here" />

示例在这里


推荐阅读