Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/440.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何显示筛选元素javascript_Javascript_Html_Css_Bootstrap 4 - Fatal编程技术网

如何显示筛选元素javascript

如何显示筛选元素javascript,javascript,html,css,bootstrap-4,Javascript,Html,Css,Bootstrap 4,我刚刚开始学习javascript,然后我遇到了一个问题,“如何显示筛选元素”,我想在搜索任何标题时显示,他们会自动筛选并提到列表的顶部,我做了,但不知道我错在哪里 index.html 这是我编写整个ui部分的index.html文件 <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta http-e

我刚刚开始学习javascript,然后我遇到了一个问题,“如何显示筛选元素”,我想在搜索任何标题时显示,他们会自动筛选并提到列表的顶部,我做了,但不知道我错在哪里

index.html

这是我编写整个ui部分的index.html文件

<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/bootstrap@4.6.0/dist/css/bootstrap.min.css"
        integrity="sha384-B0vP5xmATw1+K9KRQjQERJvTumQW0nPEzvF6L/Z6nronJ3oUOFUFpCjEUQouq2+l" crossorigin="anonymous">
    <script src="https://code.jquery.com/jquery-3.5.1.slim.min.js"
        integrity="sha384-DfXdz2htPH0lsSSs5nCTpuj/zy4C+OGpamoFVy38MVBnE+IbbVYUew+OrCXaRkfj"
        crossorigin="anonymous"></script>
    <script src="https://cdn.jsdelivr.net/npm/popper.js@1.16.1/dist/umd/popper.min.js"
        integrity="sha384-9/reFTGAW83EW2RDu2S0VKaIzap3H66lZH81PoYlFhbGU+6BZp6G7niu735Sk7lN"
        crossorigin="anonymous"></script>
    <script src="https://cdn.jsdelivr.net/npm/bootstrap@4.6.0/dist/js/bootstrap.min.js"
        integrity="sha384-+YQ4JLhjyBLPDQt//I+STsc9iw4uQqACwlvpslubQzn4u2UU2UFM80nGisd026JF"
        crossorigin="anonymous"></script>
    <title>Movie Application</title>
</head>
<style>
    .carousel img {
        width:100% !important;
        min-width:100 !important;
        height: 720px;
        background-size: cover;
    }

    input[type="text"] {
    background:lightgray;
}
.selects{
    background: lightgray;
}
select option{
    background:lightgray;
}
.card {
        margin: 0 auto; /* Added */
        float: none; /* Added */
        margin-bottom: 30px; /* Added */
}
</style>
<body>
    <!-- Navbar session start -->
    <nav class="navbar navbar-expand-lg navbar-light fixed-top bg-dark">
        <a class="navbar-brand" href="#"><img src="images/logo.png" style="width: 50px;"></a>
        <button class="navbar-toggler" type="button" data-toggle="collapse" data-target="#navbarSupportedContent"
            aria-controls="navbarSupportedContent" aria-expanded="false" aria-label="Toggle navigation">
            <span class="navbar-toggler-icon"></span>
        </button>

        <div class="collapse navbar-collapse" id="navbarSupportedContent">
            <ul class="navbar-nav mr-auto" >
                <li class="nav-item " >
                    <a class="nav-link text-white" href="#"><b>Movies</b></a>
                </li>
                <li class="nav-item">
                    <a class="nav-link text-white" href="#"><b>TV Series</b></a>
                </li>   
                <li class="nav-item">
                    <a class="nav-link text-white" href="#"><b>Audio</b></a>
                </li> 
            </ul>
        </div>
    </nav>
    <!-- navbar session end -->


    <!-- carosal start -->

    <div id="carouselExampleControls" class="carousel slide" data-ride="carousel">
        <div class="carousel-inner">
          <div class="carousel-item active">
            <img src="images/lagan.jpg" alt="..." >
          </div>
          <div class="carousel-item">
            <img src="images/tanaji.jpg" alt="..." >
          </div>
          <div class="carousel-item">
            <img src="images/sultan.jpg" alt="..." >
          </div>
        </div>
        <a class="carousel-control-prev" href="#carouselExampleControls" role="button" data-slide="prev">
          <span class="carousel-control-prev-icon" aria-hidden="true"></span>
          <span class="sr-only">Previous</span>
        </a>
        <a class="carousel-control-next" href="#carouselExampleControls" role="button" data-slide="next">
          <span class="carousel-control-next-icon" aria-hidden="true"></span>
          <span class="sr-only">Next</span>
        </a>
      </div>

    <!-- carosal end -->

    <!-- Gerns start -->

      <div class="container" style="margin-top: 50px; margin-bottom: 100px;"> 
            <div class="row" id="items">
                <div class="col-md-4">
                    <select class="form-control selects mt-1">
                        <option>Comedy</option>
                        <option>Action</option>
                        <option>Romance</option>
                    </select>
                </div>
                <div class="col-md-8 mt-1">
                    <input type="text" class="form-control" placeholder="Search Movies..." id="filter">
                </div>
            </div>
            <div class="row mt-5 mx-auto">
                <div class="col-sm-4">
                    <div class="card" style="width: 18rem;">
                        <img src="images/idiots.jpg" class="card-img-top" alt="...">
                        <div class="card-body">
                            <h5 class="card-title text-center"> Idiots</h5>
                        </div>
                      </div>
                </div>
                <div class="col-sm-4">
                    <div class="card" style="width: 18rem;">
                        <img src="images/averanger.jpg" class="card-img-top" alt="...">
                        <div class="card-body">
                            <h5 class="card-title text-center">averanger</h5>
                        </div>
                      </div>
                </div>
                <div class="col-sm-4">
                    <div class="card" style="width: 18rem;">
                        <img src="images/inception.jpg" class="card-img-top" alt="...">
                        <div class="card-body">
                            <h5 class="card-title text-center">inception</h5>
                        </div>
                      </div>
                </div>
                <div class="col-sm-4">
                    <div class="card" style="width: 18rem;">
                        <img src="images/inception.jpg" class="card-img-top" alt="...">
                        <div class="card-body">
                            <h5 class="card-title text-center">jonh</h5>
                        </div>
                      </div>
                </div>
                <div class="col-sm-4">
                    <div class="card" style="width: 18rem;">
                        <img src="images/inception.jpg" class="card-img-top" alt="...">
                        <div class="card-body">
                            <h5 class="card-title text-center">randy</h5>
                        </div>
                      </div>
                </div>
                <div class="col-sm-4">
                    <div class="card" style="width: 18rem;">
                        <img src="images/inception.jpg" class="card-img-top" alt="...">
                        <div class="card-body">
                            <h5 class="card-title text-center">cm</h5>
                        </div>
                      </div>
                </div>
                <div class="col-sm-4">
                    <div class="card" style="width: 18rem;">
                        <img src="images/inception.jpg" class="card-img-top" alt="...">
                        <div class="card-body">
                            <h5 class="card-title text-center">ron</h5>
                        </div>
                      </div>
                </div>
                <div class="col-sm-4">
                    <div class="card" style="width: 18rem;">
                        <img src="images/inception.jpg" class="card-img-top" alt="...">
                        <div class="card-body">
                            <h5 class="card-title text-center">harry</h5>
                        </div>
                      </div>
                </div>
                <div class="col-sm-4">
                    <div class="card" style="width: 18rem;">
                        <img src="images/inception.jpg" class="card-img-top" alt="...">
                        <div class="card-body">
                            <h5 class="card-title text-center">stock</h5>
                        </div>
                      </div>
                </div>
                <div class="col-sm-4">
                    <div class="card" style="width: 18rem;">
                        <img src="images/inception.jpg" class="card-img-top" alt="...">
                        <div class="card-body">
                            <h5 class="card-title text-center">tom</h5>
                        </div>
                      </div>
                </div>
                <div class="col-sm-4">
                    <div class="card" style="width: 18rem;">
                        <img src="images/inception.jpg" class="card-img-top" alt="...">
                        <div class="card-body">
                            <h5 class="card-title text-center">big</h5>
                        </div>
                      </div>
                </div>
                <div class="col-sm-4">
                    <div class="card" style="width: 18rem;">
                        <img src="images/inception.jpg" class="card-img-top" alt="...">
                        <div class="card-body">
                            <h5 class="card-title text-center">kofi</h5>
                        </div>
                      </div>
                </div>
                <div class="col-sm-4">
                    <div class="card" style="width: 18rem;">
                        <img src="images/inception.jpg" class="card-img-top" alt="...">
                        <div class="card-body">
                            <h5 class="card-title text-center">drew</h5>
                        </div>
                      </div>
                </div>
                <div class="col-sm-4">
                    <div class="card" style="width: 18rem;">
                        <img src="images/inception.jpg" class="card-img-top" alt="...">
                        <div class="card-body">
                            <h5 class="card-title text-center">ben</h5>
                        </div>
                      </div>
                </div>
                <div class="col-sm-4">
                    <div class="card" style="width: 18rem;">
                        <img src="images/inception.jpg" class="card-img-top" alt="...">
                        <div class="card-body">
                            <h5 class="card-title text-center">shane</h5>
                        </div>
                      </div>
                </div>
            </div>
           
      </div>

    <!-- Gerns End -->

    <script src="index.js"></script>
</body>

</html>

您必须将
id='items'
放在父
div
中,以便获得
h5
元素。由于
id='items'
div
不包含
h5
元素,因此您在
filteriems
函数中得到一个空列表

var itemlist = document.getElementById('items');

filter.addEventListener('keyup', filterItems);

// filter items

function filterItems(e) {
    //convert text to lowercase
    var text = e.target.value.toLowerCase();

    // get title
    var items = itemlist.getElementsByTagName('h5');

    //convert to an array
    Array.from(items).forEach(function (item) {
        var itemName = item.firstChild.textContent;
        if (itemName.toLowercase().indexOf(text) != -1) {
            item.style.display = 'block';
            item.style.cursor = 'pointer';
        }
        else {
            item.style.display = 'none';
        }
    })

}