js对页面中的内容进行拼音搜索,只对后台已经传过来的页面数据进行索引
实现输入拼音(可以使用拼音首字母来查),来查询出已经存在于页面的数据
注意:这种写法只能适用于页面中已经存在的数据进行检索,大体意思是将本页内的数据拼接成一个字符串,然后通过该字符串去检索匹配的字符串
能够使用拼音快速检索目标。
28.5KB (gzip => 20.3KB)
支持多音字、拼音首字母匹配,具备分词功能
覆盖 6763 个汉字
返回位置信息,可用于高亮匹配字符
在长多音字串下依然有高性能
引自:https://blog.csdn.net/lucky12_3/article/details/102496880,也可以去他那里找js文件,我改装的他的代码
1、首先,引入js,这个文件我会放到我的文件中,需要的可以去那里找
<script src="/static/yjs/js/pinyin.js"></script>
2、截取字符串函数
function redFont(str, start ,end) { return str.substring(start, end + 1) }
3、将页面中的数据拼接成字符串,然后根据输入的搜索内容进行查询
//data是一个数组对象,将data中需要查询的值拼接成一个字符串
for(var j=0;j<data.length;j++){ text += data[j].standard+data[j].type+data[j].ptypeid+data[j].pfullname+data[j].barcode }
// search为搜索的内容 var m = PinyinMatch.match(text,search) var n = redFont(text, m[0], m[1])
//n就是返回的就是拼音拼成的汉字
当然具体情况需要具体处理,这里我只是记录一下,毕竟我的这个页面只是需要这一种方法,如果后期还需要其他的处理逻辑,比如根据拼音去后台查询,那再去研究吧