JavaScript/JQuery 拉取空数据集以填充列表

问题描述 投票:0回答:1

我现在有一个搜索功能,可以从网站上的数据集提取数据,但现在它正在从网站上的每个角色应用程序中提取数据,无论是否有面部声明名称填充该位置。这导致我的滚动条中出现了巨大的间隙,其中只有空白区域与不使用它们的应用程序中的所有空白区域。

有足够空间且没有列出项目的滚动条

同一个滚动条向下滚动 60% 到字母顺序开始的位置

搜索功能代码如下:

function getFaceClaims() {
  $.get(
    "/index.php?act=Members&max_results=1000&sort_key=joined&sort_order=asc",
    function (data) {
      var doc = new DOMParser().parseFromString(data, "text/html");

      var faces = $(
        ".grabbyhands:not(.g_3):not(.g_4):not(.g_5):not(.g_10)",
        doc
      );

      var sortedFaces = [];

      faces.each(function () {
        let $this = $(this);
        let $charprofile = $this.find(".whodafuk");
        sortedFaces.push([$charprofile.text(), $charprofile]);
      });

      sortedFaces.sort(function (a, b) {
        return a[0].localeCompare(b[0]);
      });

      sortedFaces.forEach(function (face) {
        $("#faceclaimgods").append(face[1]);
      });

      $("#scanning").on("input", function () {
        var searchFaces = $(this).val().toLowerCase();
        sortedFaces.forEach(function (face) {
          var $charprofile = face[1];
          var faceclaim = face[0].toLowerCase();

          if (faceclaim.includes(searchFaces)) {
            $charprofile.show();
          } else {
            $charprofile.hide();
          }
        });
      });
    }
  );
}

getFaceClaims();

我尝试了几个 .trim() 来删除空格,但这完全杀死了代码。我仍在学习 JavaScript/JQuery,我的大部分内容都是从互联网上搜集的,并与我所拥有的知识零碎地结合在一起,所以我很乐意一路学习当提出建议时某些东西起作用的“为什么”!这段代码是从我朋友的第一次迭代中删除的,因此它是目前终极的弗兰肯斯坦,因此也欢迎在流程顺序或清理方面提供其他反馈。谢谢你! (:

javascript jquery
1个回答
0
投票
$charprofile

推送到sortedFaces之前检查它是否为空。我不知道那些空的是什么样子。我只是假设它们是一个空字符串。所以它可能是这样的:

if($charprofile.text().length !== 0) {
    sortedFaces.push([$charprofile.text(), $charprofile]);
}

© www.soinside.com 2019 - 2024. All rights reserved.