如何制作一个将姓名过滤到数组列表中的函数?

时间:2019-02-16 19:07:39

标签: javascript arrays

我想使用数组列表作为过滤器名称,但是它没有任何作用。你们中的任何一个可以帮助我吗?

这是我正在从事的私人项目

在输入文件时我想过滤掉名字

// List of Names
myList = ["A","B","C","D",];
// declare Var
var ul, li, sortMyNames, input, inputValue;

function getNames() {
    // FUNCTION TO SORT NAMES IN A LIST
    sortMyNames = sortNames();
    // GET INPUT
    getInpValue = getInputValue();

    // GET UL
    ul = document.getElementById("myUL");

    for (var i = 0; i < myList.length; i++) {
        // CREATE LIST ITEM
        li = document.createElement("li");
        // SET ITS CONTENTS
        li.appendChild(document.createTextNode(myList[i][0]));

        txtValue = li.textContent || li.innerText;
        if (txtValue.toUpperCase().indexOf(inputValue) > -1) {
            li[i].style.display = "";
        } else {
            li[i].style.display = "none";
        }

        ul.appendChild(li);
    }
    return ul;
}

function getInputVaule() {
    // GET INPUT
    input = document.getElementById("filter-input");
    //GET THE VALUE FROM INPUT
    inputValue = input.value.toUpperCase();
    console.log(inputValue);
}

function sortNames() {
    myList.sort();
}

1 个答案:

答案 0 :(得分:0)

一个问题似乎是您不断向<li>添加新的<ul>元素,但从未清除<ul>或从中删除任何列表项。