1. 程式人生 > >layui的佈局和表格的渲染以及動態生成表格

layui的佈局和表格的渲染以及動態生成表格

整體的效果:


一、首先百度搜索layui的地址,然後下載layui的壓縮包,,將壓縮包的檔案解壓縮,然後將解壓縮後的檔案複製到你的編譯器上;

二、建立一個html檔案,引入layui.css 和 layui.js兩個檔案,一定要將地址寫對,css和js要一起引用;

三、將整個頁面分為三部分body標籤中要引用的class為class="layui-layout-body"

   3.1、頭部部分:用一個大的div包裹,class="layui-layout layui-layout-admin",然後可以設計自己的logo或者所需要的二級導航,具體實現程式碼如下所示:

3.2、對左邊的設定,因為要實現的效果是點選左邊顯示右邊的內容,所以在左邊最重要的是iframe框架和新建的兩個html檔案;在右邊的主題內容區域,將iframe的name值的設定為重點,因為在左邊得超連結是根據<a>標籤裡得target=“iframe的name”值才能實現點選左邊顯示右邊的內容,具體實現程式碼如下:

<!--用layui佈局左邊的樣式-->
        <div class="layui-side layui-bg-black" style="margin-top: 58px;">
            <div class="layui-side-scroll">
                <ul class="layui-nav layui-nav-tree" lay-filter="test">
                    <li class="layui-nav-item layui-nav-itemed"><a href="D_righter.html" target="option">

資料表格</a></li>
                    <li class="layui-nav-item layui-nav-itemed"><a href="表單.html" target="option">表單</a></li>
                    <li class="layui-nav-item layui-nav-itemed"><a href="javascript:;">資料表格</a></li>
                </ul>
            </div>
        </div>

3.3、右邊是內容的主題部分,剛開始映入眼簾的就是D_righter.html只需要一個iframe框架中的src屬性告訴左邊他們跳轉的目標是右邊即可,具體程式碼如下:

<div class="layui-body" style="margin-top: 58px;">
            <div style="padding: 15px; height: 100%;">
                <iframe id="option" name="option" src="D_righter.html" style="overflow: visible;" scrolling="no" frameborder="no" width="100%" height="100%"></iframe>
            </div>

        </div>

到此主頁部分設定完畢!

第二部分:D_righter.html(也就是動態生成表格部分)

由於只是測試程式碼,並沒有後臺資料庫的支援,所以介面會出現異常;

      注意:總共有三種渲染方式,今天介紹兩種:方法渲染和自動渲染;今天用的是方法渲染;

               方法渲染:其實這是“自動化渲染”的手動模式,本質類似,只是“方法級渲染”將基礎引數的設定放在了JS程式碼中

,且原始的 table 標籤只需要一個選擇器

               自動渲染:自動是用自動渲染表格的方法,也就是在一段table容器內配置好相應的引數,由table模組內部實現自動渲染。

                1、帶有class="layui-table"的table標籤;

                2、對標籤設定屬性lay-data=""用於配置一些基礎引數;

                3、在 <th> 標籤中設定屬性lay-data=""用於配置表頭資訊

具體實現程式碼如下,


第三部分:表單的實現

        layui 針對各種表單元素做了較為全面的UI支援,無需去書寫那些 UI 結構,你只需要寫 HTML 原始的 input、select、textarea 這些基本的標籤即可。我們在 UI 上的渲染只要求一點,必須給表單體系所在的父元素加上class="layui-form",一切的工作都會在你載入完form模組後,自動完成。

<form class="layui-form" action="">
      <div class="layui-form-item">
        <label class="layui-form-label">輸入框</label>
        <div class="layui-input-block">
          <input type="text" name="title" required  lay-verify="required" placeholder="請輸入標題" autocomplete="off" class="layui-input">
        </div>
      </div>
      <div class="layui-form-item">
        <label class="layui-form-label">密碼框</label>
        <div class="layui-input-inline">
          <input type="password" name="password" required lay-verify="required" placeholder="請輸入密碼" autocomplete="off" class="layui-input">
        </div>
        <div class="layui-form-mid layui-word-aux">輔助文字</div>
      </div>
      <div class="layui-form-item">
        <label class="layui-form-label">選擇框</label>
        <div class="layui-input-block">
          <select name="city" lay-verify="required">
            <option value=""></option>
            <option value="0">北京</option>
            <option value="1">上海</option>
            <option value="2">廣州</option>
            <option value="3">深圳</option>
            <option value="4">杭州</option>
          </select>
        </div>
      </div>
      <div class="layui-form-item">
        <label class="layui-form-label">複選框</label>
        <div class="layui-input-block">
          <input type="checkbox" name="like[write]" title="寫作">
          <input type="checkbox" name="like[read]" title="閱讀" checked>
          <input type="checkbox" name="like[dai]" title="發呆">
        </div>
      </div>
      <div class="layui-form-item">
        <label class="layui-form-label">開關</label>
        <div class="layui-input-block">
          <input type="checkbox" name="switch" lay-skin="switch">
        </div>
      </div>
      <div class="layui-form-item">
        <label class="layui-form-label">單選框</label>
        <div class="layui-input-block">
          <input type="radio" name="sex" value="男" title="男">
          <input type="radio" name="sex" value="女" title="女" checked>
        </div>
      </div>
      <div class="layui-form-item layui-form-text">
        <label class="layui-form-label">文字域</label>
        <div class="layui-input-block">
          <textarea name="desc" placeholder="請輸入內容" class="layui-textarea"></textarea>
        </div>
      </div>
      <div class="layui-form-item">
        <div class="layui-input-block">
          <button class="layui-btn" lay-submit lay-filter="formDemo">立即提交</button>
          <button type="reset" class="layui-btn layui-btn-primary">重置</button>
        </div>
      </div>

    </form>

        必須放入 layui 所規範的元素結構,form 模組才會對其進行重置渲染。值得注意的是,在具體的每一塊表單元素中,仍是像往日一樣寫 input 等標籤即可。另外,我們對我們所規範的結構進行了響應式的支援,而針對一些不同的表單排版,比如行內表單,也只需要設定所定義好的 class 即可。