JS实现前端页面的搜索功能

效果图如下所示:

<input type="text" id="campus" class="layui-input" onkeyup="ck(this.value);" placeholder="请输入要查找的英语屋">//输入触发框

<div class="layui-input-block layui-form" id="cam" lay-filter="cam">这个是要显示的校区的容器,渲染的就是这个页面</div>

//模板数据

//因为这块用到了layui的语句和jfinal的语句,所以需要把layui的#用jfinal的#让layui当作普通字符串输出

<script type="text/html" id="searchText">

#for(x : CampusKit.findListByAccount(loginAccount))//jfinal的语句,循环

//这里把原来选择的数据显示出来,已经选择的数据,显示,如果不显示,保存的话,会把这些数据默认成没有选择的

#if(sysAccountCampusIds.contains(x.id.toString()))

<input type='checkbox' value="#(x.id)" name='campus'

#(sysAccountCampusIds.contains(x.id.toString()) ? 'checked="checked"':'')

title="#(x.campusName)" id='campusBox#(x.id)'>

#end

//这里用到了layui的语句和jfinal的语句结合,#(x.campusName) jfinal 的语句,{{#("#") if(isContains("#(x.campusName)",d.val)){ }}中的d.val因为if用的是layui的语句,所以直接写就可以,一般都是{{d.val}}这样写

{{#("#") if(isContains("#(x.campusName)",d.val)){ }}

<input type='checkbox' value="#(x.id)" name='campus'

#(sysAccountCampusIds.contains(x.id.toString()) ? 'checked="checked"':'')

title="#(x.campusName)" id='campusBox#(x.id)'>

{{#("#") } }}

#end

</script>

//str字符串是否包含substr字符串

function isContains(str, substr) {

return str.indexOf(substr) >= 0;

}

//layui模板的写法

var getTpl = searchText.innerHTML;//写到js方法外边这样只加载一次,不用每次都加载,速度快

/* 前端页面的搜索 */

function ck(campusName){

//渲染模版

layui.laytpl(getTpl).render({"val":campusName}, //json值

function(html){

$("#cam").html(html);//jquery把模板加载到div id是cam中<div id="cam"></div>

console.log(html);

layui.form.render(null,"cam"); //更新这个容器中的页面

});

}

总结

以上所述是小编给大家介绍的JS实现前端页面的搜索功能,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对网站的支持!

以上是 JS实现前端页面的搜索功能 的全部内容, 来源链接: utcz.com/z/348218.html

回到顶部