javascript - 如何实现输入框提示功能?
大家讲道理
大家讲道理 2017-04-10 17:20:55
[JavaScript讨论组]

给定一个输入框,一个搜索点击按钮,当输入框获得焦点时提示用户最近搜索内容,如何实现,有哪些方法。从哪些方面测试以保障其健壮性。

大家讲道理
大家讲道理

光阴似箭催人老,日月如移越少年。

全部回复(7)
大家讲道理

说说思路。
建立一个隐藏的ul列表,待选项在列表里面。
把曾经的输入内容以数组的形式存储在localstorage内。
设置待选列表数组的最大长度,先进后出。
把数组内容提取并渲染到列表上。

黄舟

建议用localstorage储存这样持久性的数据

cookies主要用来验证身份

PHPz

用户搜索记录一般存在数据库中,当用户打开你的站点之时,就默认加载最近的记录到redis等缓存中,然后输入框获得焦点时就触发js事件,用ajax去从后台获得相应的数据,后台直接从缓存中获取数据返回给前端。缓存的主要作用是一个用户在一次搜索过程中只需触发一次数据库操作。用户搜索后更新缓存,当用户退出站点后,缓存更新到数据库。

黄舟

从简的话 使用cookie
保证兼容 还是cookie
类似客户端的数据除了放在cookie 还可以考虑内存数据库 如楼上提出的redis 或者 memcached

怪我咯

用cookie记录用户最近搜索词,当用户输入的时候取cookie并从值中匹配,然后就是提示给用户了

PHP中文网

1,将热门或近期搜索内容存储到json文件或数据库中。
2,将搜索内容放到本地。
3,输入搜索内容时用文本相似算法,输出与输入内容相似最高的几个搜索内容。

巴扎黑

locationStorage保存用户的搜索历史,然后遍历出来

热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 意见反馈 讲师合作 广告合作 最新更新 English
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习
PHP中文网抖音号
发现有趣的

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号