1.把数据渲染到页面中(forEach)
2.根据价格显示数据(filter)
3.根据商品名显示数据
效果如下:
代码如下:
html
<div id="app"><div class="begin">按照价格查询:<input type="text" class="start">-<input type="text" class="end"><input type="button" value="搜索" class="pri">按照商品名称查询:<input type="text" class="product"><input type="button" value="查询" class="pro"></div><div class="end"><table class="tb"><thead><tr><th>id</th><th>产品名称</th><th>价格</th></tr></thead><tbody></tbody></table></div></div>
css
<style>#app{width: 600px;height: 500px;margin: 10px auto;}.begin{padding: 10px;border: 1px solid black;margin-bottom: 20px;}.end{border: 1px solid black;height: 100%;}input{width: 50px;}.tb{width: 95%;border-collapse: collapse;margin: 10px auto;}.tb th{background-color: #0094ff;}.tb th,.tb td{border: 1px solid black;text-align: center;}
</style>
js
//利用新增数组方法操作数据var list=[{id:1,name:'小米',price:3999},{id:2,name:'oppo',price:999},{id:3,name:'荣耀',price:1299}];//1.获取相应的元素var tbody = document.querySelector('tbody');var pri = document.querySelector(".pri");var start = document.querySelector('.start');var end = document.querySelector('.end');var product = document.querySelector('.product')var pro = document.querySelector('.pro')setList(list)//2.把数据渲染到页面中function setList(mylist){//先清空原来tbody里面的数据tbody.innerHTML=""mylist.forEach(function(value){// console.log(value);var tr = document.createElement("tr");tr.innerHTML = '<td>' + value.id +'</td><td>' + value.name +'</td><td>' + value.price +'</td>'tbody.appendChild(tr);});}//3.根据价格查询商品//当我们点击了按钮,就可以根据我们的商品价格去筛选数组里面的对象。pri.addEventListener('click',function(){// console.log(111)var newList = list.filter(function(value){return value.price >= start.value && value.price <= end.value;});console.log(newList);//把筛选完之后的对象渲染到页面中setList(newList)});//4.根据商品名称查找商品//如果查询数组中唯一的元素,用some方法更合适,因为它找到这个元素,就不在进行循环,效率更高pro.addEventListener('click',function(){var arr = [];list.some(function(value){if(value.name === product.value){// console.log(value);arr.push(value);return true; //return 必须后面写true}});//把拿到的数据渲染到页面中setList(arr)})
4617起帆电缆厂家全名梦见吃油饼周公解梦易经周公解梦请人起名字古筝红楼梦曲具体讲解饮料的名字怎么起周易古诗文网二手车交易市场周末健康 公司 起名好的商贸公司起名字好为婴儿起乳名老公姓李老婆姓王起名字周易预测2012年股票走势精灵宝可梦无限钻石破解下载起名字女孩带珏周易晋卦详解艺术公司起名字大全集8月29日八字算命属猪儿童起名宜用字男机械租赁公司免费起名周易纹身算命生辰八字qq周易原来版周公解梦给女宝宝起名字大全2019周易天地的六爻预测股市周易八卦六爻图解生命灵数怎么算小说,算死命吴姓女孩起名大全有涵义的升字怎么起名淀粉肠小王子日销售额涨超10倍罗斯否认插足凯特王妃婚姻让美丽中国“从细节出发”清明节放假3天调休1天男子给前妻转账 现任妻子起诉要回网友建议重庆地铁不准乘客携带菜筐月嫂回应掌掴婴儿是在赶虫子重庆警方辟谣“男子杀人焚尸”国产伟哥去年销售近13亿新的一天从800个哈欠开始男孩疑遭霸凌 家长讨说法被踢出群高中生被打伤下体休学 邯郸通报男子持台球杆殴打2名女店员被抓19岁小伙救下5人后溺亡 多方发声单亲妈妈陷入热恋 14岁儿子报警两大学生合买彩票中奖一人不认账德国打算提及普京时仅用姓名山西省委原副书记商黎光被逮捕武汉大学樱花即将进入盛花期今日春分张家界的山上“长”满了韩国人?特朗普谈“凯特王妃P图照”王树国3次鞠躬告别西交大师生白宫:哈马斯三号人物被杀代拍被何赛飞拿着魔杖追着打315晚会后胖东来又人满为患了房客欠租失踪 房东直发愁倪萍分享减重40斤方法“重生之我在北大当嫡校长”槽头肉企业被曝光前生意红火手机成瘾是影响睡眠质量重要因素考生莫言也上北大硕士复试名单了妈妈回应孩子在校撞护栏坠楼网友洛杉矶偶遇贾玲呼北高速交通事故已致14人死亡西双版纳热带植物园回应蜉蝣大爆发男孩8年未见母亲被告知被遗忘张立群任西安交通大学校长恒大被罚41.75亿到底怎么缴沈阳一轿车冲入人行道致3死2伤奥运男篮美国塞尔维亚同组周杰伦一审败诉网易国标起草人:淀粉肠是低配版火腿肠外国人感慨凌晨的中国很安全男子被流浪猫绊倒 投喂者赔24万杨倩无缘巴黎奥运男子被猫抓伤后确诊“猫抓病”春分“立蛋”成功率更高?记者:伊万改变了国足氛围奥巴马现身唐宁街 黑色着装引猜测