列表的模糊搜索——indexOf()用法-对大小写敏感 & 检索字符串值没有出现,则该方法返回 -1

列表的模糊搜索——indexOf()用法-对大小写敏感 & 检索字符串值没有出现,则该方法返回 -1

<html lang="en">

<head>
    <meta charset="UTF-8">
    <title>模糊查询</title>
</head>
<style>
    .wrap {
        text-align: center;
        max-width: 400px;
    }

    #newsBox {
        display: inline-block;
        text-align: left;
    }

    input {
        width: 100%;
    }
</style>

<body>
    <div class="wrap">
        <input type="text" id="demo">
        <ul id="newsBox">
        </ul>
    </div>
</body>
<script type="text/javascript">
    var data = ["百年:'牢记嘱托立德树人'", "百年南开:牢记嘱托立德树人", "书写命运与共的世界故事100天后,世园会等你来", "打造一支高素质政法队伍2019北京两会",
        "跋山涉水接力跑——全面深化改革的“广东探索”",
        "归途,开启家的记忆—写在2019年春运之际", "春运大幕今开启 多部门联动将严打车闹座霸", "人社部:已为38.9万农民工追发工资待遇57亿元", "个人所得税APP更新,房屋出租人信息不用填了"
    ]
    var input = document.getElementById("demo");
    var ul = document.getElementById("newsBox");

    function creat() {
        var value = input.value;
        var html = "";
        var newData = data.filter(item => {
            if (item.indexOf(value) > -1) { //indexOf方法中如果xxx.indexOf("")返回值为0
                return item
            }
            return newData
        })
        if (newData.length > 0) {
            for (var i = 0; i < newData.length; i++) {
                html += `<li>${newData[i]}</li>`
            }
        } else {
            html += `<li>暂无数据</li>`
        }
        ul.innerHTML = html;
    }
    creat()
    input.onchange = function (e) {
        creat()
    }
</script>

</html>

列表数据

在这里插入图片描述

搜索展示

在这里插入图片描述

附录:

indexOf()用法

注释:indexOf() 方法对大小写敏感!

注释:如果要检索的字符串值没有出现,则该方法返回 -1。

let str = 'orange';
 
str.indexOf('o'); //0
str.indexOf('n'); //3
str.indexOf('c'); //-1
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值