html中layui+jfinal模板實現前端搜索功能

 <input type="text" id="campus" class="layui-input" onkeyup="ck(this.value);" placeholder="請輸入要查找的英語屋">//輸入觸發框


顯示數據的地方
<
div class="layui-inline" id="campus"> <label class="layui-form-label">#(i18n.get('勾選校區'))</label> <div class="layui-input-block layui-form" id="cam" lay-filter="cam"> #if(sysAccount.id)
              //把用戶的校區存到做用域中 #set(sysAccountCampusIds = CampusKit.findCampusIdsByAccount(sysAccount)) #else #set(sysAccountCampusIds = "") #end #for(x : CampusKit.findListByAccount(loginAccount))
<input type='checkbox' value="#(x.id)" name='campus' #(sysAccountCampusIds.contains(x.id.toString()) ? 'checked="checked"':'') title="#(x.campusName)" id='campusBox#(x.id)'> #end </div> </div>
 
 

 


//模板數據 //由於這塊用到了layui的語句和jfinal的語句,因此須要把layui的#用jfinal的#讓layui看成普通字符串輸出 <script type="text/html" id="searchText"> #for(x : CampusKit.findListByAccount(loginAccount))//jfinal的語句,循環       <!-- 查找出要查的數 --> {{#("#") if(isContains("#(x.campusName)",d.val)){ }}//這裏用到了layui的語句和jfinal的語句結合,#(x.campusName) jfinal 的語句,{{#("#") if(isContains("#(x.campusName)",d.val)){ }}中的d.val由於if用的是layui的語句,因此直接寫就能夠,通常都是{{d.val}}這樣寫 <input type='checkbox' value="#(x.id)" name='campus' #(sysAccountCampusIds.contains(x.id.toString()) ? 'checked="checked"':'') title="#(x.campusName)" id='campusBox#(x.id)'> {{#("#") } }}

    <!-- 保留原來數據,原來有的選怎的數據顯示出來,不然保存的時候會把原來的刪除的,因此把原來的保存下來-->
    {{#("#") if(d.isShow != null && d.isShow.length > 0){ }}
      #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
    {{#("#") } }}html

  #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,"isShow":campusName}, //json值,isShouw爲了那邊作出判斷使用
            function(html){
        $("#cam").html(html);//jquery把模板加載到div   id是cam中<div id="cam"></div>
        console.log(html);
        layui.form.render(null,"cam"); //更新這個容器中的頁面
    });
      
}

記錄學習歷程...前端

大師兄真的很厲害啊。各類的都會...jquery

相關文章
相關標籤/搜索