过滤JQuery所选项目列表

时间:2018-01-17 11:08:50

标签: javascript jquery

我处于这样一种情况,即我没有找到一个选择器或选择器功能,它完全符合我的意愿。

因此我试图过滤列表以仅包含我想要的项目。

我有一个选择器

var html = $(".foo .foobar")

这会返回我想要的内容。

然后我有一个for循环遍历那些选定的项目,并确定我想要保留在该列表中的那些。

但是,我需要保持修改后的列表与选择器的类型相同,以便稍后我可以对它们执行jquery操作。

如何创建' html'的副本?变量(或过滤的原始),但只有在函数中找到的所需行(保持它仍然处于一个状态,好像它是一个选择器本身)?

后来我有一个'每个'这样开始的循环:

html.each(function(i, el) {
   $(this).replaceWith(tempArr[i]);

我正在努力实现一个结果,其中' html.each'有' html'作为先前选择的修改列表。

感谢。

//更新



var htmlTemp;

for (var primaryCounter = 0, secondryCounter = 0; primaryCounter < htmlTemp.length; primaryCounter++) {

  if (firstFound) {
    secondryCounter++;
    if (secondryCounter % columnCount === 0) {
      html.push(htmlTemp[primaryCounter]);
    }
  } else {
     if (primaryCounter === currI) {
        html.push(htmlTemp[primaryCounter]);
        firstFound = true;
     }
  }


}
&#13;
&#13;
&#13;

以上是包含我想要使用的逻辑的功能(哪个不会运行)。有没有办法过滤&#39;可能在哪里我可以调用此函数而不是&#39; push()&#39;只是在这些索引中找到?谢谢。

1 个答案:

答案 0 :(得分:1)

假设html为数组,您可以每次使用html.filter(callbackFunc)获取新列表。

选中此https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/filter