Thursday, October 1, 2020

Search filter using html css and javascript

 <!DOCTYPE html>

<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Search filter</title>
    <link rel="stylesheet" href="style.css">
</head>
<body>
    <div class="container">
        <div class="container1">
            <input type="text" class="search" id="search">
        </div>
        <div class="container2">
            <div class="name" id="name1">
                <p>Harry</p>
            </div>
            <div class="name" id="name2">
                <p>Sheeta</p>
            </div>
            <div class="name" id="name3">
                <p>Mosh</p>
            </div>
            <div class="name" id="name4">
                <p>Aries</p>
            </div>
            <div class="name" id="name5">
                <p>Bob</p>
            </div>
            <div class="name" id="name6">
                <p>Lucky</p>
            </div>
            <div class="name" id="name7">
                <p>Peter</p>
            </div>
            <div class="name" id="name8">
                <p>Rohit</p>
            </div>
            <div class="name" id="name9">
                <p>Raj</p>
            </div>
            <div class="name" id="name10">
                <p>Rose</p>
            </div>
        </div>
    </div>
    <script src="index.js"></script>
</body>
</html>


CSS code:

body{
    displayflex;
    justify-contentcenter;
    align-itemscenter;
}

.container{
    displayflex;
    align-itemscenter;
    justify-contentcenter;
    flex-directioncolumn;
    background-colorblack;
    width50%;
    border-radius20px;
    margin-top30px;
}

.container1{
    margin-top20px;
    width500px;
    displayflex;
    align-itemscenter;
    justify-contentcenter;
}

.container1 input{
    margin-top20px;
    border2px solid gold;
    border-radius10px;
    font-size20px;
    font-weight500;
    colorwhite;
    outlinenone;
    text-aligncenter;
    background-colorblack;
}

.container2{
    width600px;
    margin-top20px;
    background-colorblack;
    colorwhite;
    border-radius20px;
}

.name{
    borderyellow;
    background-colorgreen;
    border-radius10px;
    font-size24px;
    text-aligncenter;
    width500px;
    marginauto;
}

Javascript Code:

let search = document.getElementById('search');

search.addEventListener('input',()=>{
    let search = document.getElementById('search').value.toLowerCase();
    console.log(search);
    let name = document.getElementsByClassName('name');
    // console.log(name);
    Array.from(name).forEach((element,index)=>{
        let text = document.getElementsByTagName('p')[index].innerText.toLowerCase();
        console.log(text);
        if(text.includes(search)){
            element.style.display = 'block'
        }
        else{
            element.style.display = 'none'

        }
    })
    
    
})

No comments:

Post a Comment