JS實(shí)現(xiàn)前端頁(yè)面的搜索功能
效果圖如下所示:

<input type="text" id="campus" class="layui-input" onkeyup="ck(this.value);" placeholder="請(qǐng)輸入要查找的英語(yǔ)屋">//輸入觸發(fā)框 <div class="layui-input-block layui-form" id="cam" lay-filter="cam">這個(gè)是要顯示的校區(qū)的容器,渲染的就是這個(gè)頁(yè)面</div>
//模板數(shù)據(jù)
//因?yàn)檫@塊用到了layui的語(yǔ)句和jfinal的語(yǔ)句,所以需要把layui的#用jfinal的#讓layui當(dāng)作普通字符串輸出
<script type="text/html" id="searchText">
#for(x : CampusKit.findListByAccount(loginAccount))//jfinal的語(yǔ)句,循環(huán)
//這里把原來(lái)選擇的數(shù)據(jù)顯示出來(lái),已經(jīng)選擇的數(shù)據(jù),顯示,如果不顯示,保存的話(huà),會(huì)把這些數(shù)據(jù)默認(rèn)成沒(méi)有選擇的
#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的語(yǔ)句和jfinal的語(yǔ)句結(jié)合,#(x.campusName) jfinal 的語(yǔ)句,{{#("#") if(isContains("#(x.campusName)",d.val)){ }}中的d.val因?yàn)閕f用的是layui的語(yǔ)句,所以直接寫(xiě)就可以,一般都是{{d.val}}這樣寫(xiě)
{{#("#") 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模板的寫(xiě)法
var getTpl = searchText.innerHTML;//寫(xiě)到j(luò)s方法外邊這樣只加載一次,不用每次都加載,速度快
/* 前端頁(yè)面的搜索 */
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"); //更新這個(gè)容器中的頁(yè)面
});
}
總結(jié)
以上所述是小編給大家介紹的JS實(shí)現(xiàn)前端頁(yè)面的搜索功能,希望對(duì)大家有所幫助,如果大家有任何疑問(wèn)請(qǐng)給我留言,小編會(huì)及時(shí)回復(fù)大家的。在此也非常感謝大家對(duì)腳本之家網(wǎng)站的支持!
相關(guān)文章
js canvas畫(huà)布實(shí)現(xiàn)高斯模糊效果
這篇文章主要為大家詳細(xì)介紹了js canvas畫(huà)布實(shí)現(xiàn)高斯模糊效果,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2018-11-11
微信小程序數(shù)據(jù)操作指南之從綁定到更新的操作方法
在微信小程序開(kāi)發(fā)中,數(shù)據(jù)操作是不可或缺的一環(huán),文章詳細(xì)介紹了數(shù)據(jù)綁定、更新等方法,并提供示例和注意事項(xiàng),幫助開(kāi)發(fā)者更好地應(yīng)用這些技術(shù),本文給大家介紹微信小程序數(shù)據(jù)操作指南之從綁定到更新,感興趣的朋友跟隨小編一起看看吧2024-10-10
javascript之水平橫向滾動(dòng)歌詞同步的應(yīng)用
javascript之水平橫向滾動(dòng)歌詞同步的應(yīng)用...2007-05-05
JavaScript實(shí)現(xiàn)in-place思想的快速排序方法
這篇文章主要介紹了JavaScript實(shí)現(xiàn)in-place思想的快速排序方法的相關(guān)資料,非常不錯(cuò),具有參考借鑒價(jià)值,需要的朋友可以參考下2016-08-08
基于JS實(shí)現(xiàn)一個(gè)簡(jiǎn)單的投票demo
這篇文章主要介紹了如何利用JavaScript實(shí)現(xiàn)一個(gè)簡(jiǎn)單的投票demo,文中的示例代碼講解詳細(xì),對(duì)我們學(xué)習(xí)有一定參考價(jià)值,需要的可以參考一下2022-06-06
Openlayers測(cè)量距離與面積的實(shí)現(xiàn)方法
這篇文章主要為大家詳細(xì)介紹了Openlayers測(cè)量距離與面積的實(shí)現(xiàn)方法,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2020-09-09

