Heim > Web-Frontend > Layui-Tutorial > So verwenden Sie grundlegende Parameter im Tabellenmodul in Laui

So verwenden Sie grundlegende Parameter im Tabellenmodul in Laui

王林
Freigeben: 2021-02-01 15:34:41
nach vorne
3709 Leute haben es durchsucht

So verwenden Sie grundlegende Parameter im Tabellenmodul in Laui

Einführung:

layui ist eine sofort einsatzbereite Front-End-UI-Lösung mit niedrigem Schwellenwert, die von professionellen Front-End-Entwicklern für alle Ebenen von Front-End- und Back-End-Entwicklern entwickelt wurde. Das Tabellenmodul von

layui ist ein wichtiges Modul, das es hinsichtlich der Grundparameter so benutzerfreundlich wie möglich macht, d. h. die Voraussetzung der Funktionalität gewährleistet und gleichzeitig übermäßig komplizierte Konfigurationen vermeidet. Grundparameter erscheinen im Allgemeinen in den folgenden Szenarien:

场景一:下述 lay-data 里面的内容即为基础参数项,切记:值要用单引号
<table lay-data="{height:300, url:&#39;/api/data&#39;}" lay-filter="demo"> …… </table>

场景二:下述方法中的键值即为基础参数项
table.render({
  height: 300
  ,url: &#39;/api/data&#39;
});

更多场景:下述options即为含有基础参数项的对象
> table.init(&#39;filter&#39;, options); //转化静态表格
> var tableObj = table.render({});
  tableObj.reload(options); //重载表格
Nach dem Login kopieren

Schauen wir uns als nächstes an, was die Grundelemente sind?

1. elem – Das Bindungselement gibt den ursprünglichen Tabellencontainer an, der nur auf die Rendering-Methode von table.render() anwendbar ist.

HTML:
<table id="test"></table>

JS:
table.render({ //其它参数在此省略
  elem: &#39;#test&#39; //或 elem: document.getElementById(&#39;test&#39;) 等
});
Nach dem Login kopieren

2 Legen Sie den Tabellenkopf fest, der viele Werte enthält. dimensionales Array. Wenn Sie das „Rendering auf Methodenebene“ von Tabellen verwenden, müssen Sie diesen Parameter zum Festlegen der Tabelle verwenden. Zum Beispiel:

JS:
table.render({
  cols:  [[ //标题栏
    {checkbox: true}
    ,{field: &#39;id&#39;, title: &#39;ID&#39;, width: 80}
    ,{field: &#39;username&#39;, title: &#39;用户名&#39;, width: 120}
  ]]
});

它等价于:
<table class="layui-table" lay-data="{基础参数}" lay-filter="test">
  <thead>
    <tr>
      <th lay-data="{checkbox:true}"></th>
      <th lay-data="{field:&#39;id&#39;, width:80}">ID</th>
      <th lay-data="{field:&#39;username&#39;, width:180}">用户名</th>
    </tr>
  </thead>
</table>
Nach dem Login kopieren

Das Folgende ist ein Beispiel für einen sekundären Header:

JS:
table.render({
  cols:  [[ //标题栏
    {field: &#39;username&#39;, title: &#39;联系人&#39;, width: 80, rowspan: 2} //rowspan即纵向跨越的单元格数
    ,{field: &#39;amount&#39;, title: &#39;金额&#39;, width: 80, rowspan: 2}
    ,{align: &#39;center&#39;, title: &#39;地址&#39;, colspan: 3} //colspan即横跨的单元格数,这种情况下不用设置field和width
  ], [
    {field: &#39;province&#39;, title: &#39;省&#39;, width: 80}
    ,{field: &#39;city&#39;, title: &#39;市&#39;, width: 120}
    ,{field: &#39;county&#39;, title: &#39;详细&#39;, width: 300}
  ]]
});
 
它等价于:
<table class="layui-table" lay-data="{基础参数}">
  <thead>
    <tr>
      <th lay-data="{field:&#39;username&#39;, width:80}" rowspan="2">联系人</th>
      <th lay-data="{field:&#39;amount&#39;, width:120}" rowspan="2">金额</th>
      <th lay-data="{align:&#39;center&#39;}" colspan="3">地址</th>
    </tr>
    <tr>
      <th lay-data="{field:&#39;province&#39;, width:80}">省</th>
      <th lay-data="{field:&#39;city&#39;, width:120}">市</th>
      <th lay-data="{field:&#39;county&#39;, width:300}">详细</th>
    </tr>
  </thead>
</table>
Nach dem Login kopieren

Es ist zu beachten, dass das Tabellenmodul Infinitus-Header unterstützt und Sie es auf die oben beschriebene Weise weiter erweitern können. Der Kernpunkt liegt in den beiden Parametern rowspan und colspan.

Der nächste Schritt besteht darin, einige Parameter im Tabellenkopf festzulegen.

<1> Feld: Legen Sie den Feldnamen fest

table.render({
  cols: [[
    {field: &#39;id&#39;} //其它参数在此省略
    ,{field: &#39;username&#39;}
  ]]
});

等价于:
<th lay-data="{field:&#39;id&#39;}"></th>
<th lay-data="{field:&#39;username&#39;}"></th>
Nach dem Login kopieren

<3> Breite: Spaltenbreite festlegen. Die Einstellung der Spaltenbreite ist in der Regel notwendig (mit Ausnahme von „Spezialspalten“ wie Kontrollkästchenspalten, Symbolleisten usw.), was mit der Gesamtschönheit der Tabelle zusammenhängt.

table.render({
  cols: [[
    {title: &#39;邮箱&#39;} //其它参数在此省略
    ,{title: &#39;签名&#39;}
  ]]
});

等价于:
<th lay-data="{}">邮箱</th> (PS:也可以把标题写在lay-data里面,即 title:&#39;邮箱&#39;)
<th lay-data="{}">签名</th>
Nach dem Login kopieren

<4> Kontrollkästchen: Aktivieren Sie das Kontrollkästchen. Wenn es auf „true“ gesetzt ist, bedeutet dies, dass der Inhalt dieser Spalte ein Kontrollkästchen ist. Normalerweise wird es in der ersten Spalte platziert.

table.render({
  cols: [[
    {width: 80} //其它参数在此省略
    ,{width: 120}
  ]]
});

等价于:
<th lay-data="{width:80}"></th>
<th lay-data="{width:120}"></th>
Nach dem Login kopieren

Es ​​ist auch zu beachten, dass LAY_CHECKED hier in Verbindung mit dem Kontrollkästchen verwendet wird. Wenn es auf „true“ gesetzt ist, bedeutet dies, dass alle Kontrollkästchen standardmäßig aktiviert sind.

table.render({
  cols: [[
    {checkbox: true} //其它参数在此省略
    ,{field: &#39;id&#39;, title:&#39;ID&#39;, width: 100}
  ]]
});

等价于:
<th lay-data="{checkbox:true}"></th>
<th lay-data="{field:&#39;id&#39;, width:100}">ID</th>
Nach dem Login kopieren

<5> Leerzeichen: Legen Sie die Lückenspalte fest. Wenn auf „true“ gesetzt, wird eine 15 Pixel breite Spalte ohne Inhalt definiert.

table.render({
  cols: [[
    {checkbox: true, LAY_CHECKED: true} //其它参数在此省略
    ,{field: &#39;id&#39;, title:&#39;ID&#39;, width: 100}
  ]]
});

等价于:
<th lay-data="{checkbox:true, LAY_CHECKED: true}"></th>
<th lay-data="{field:&#39;id&#39;, width:100}">ID</th>
Nach dem Login kopieren

<6> Sortierung: Ob eine Sortierung erforderlich ist. Wenn auf „true“ gesetzt, wird das Sortiersymbol im entsprechenden Tabellenkopf angezeigt und dadurch die Sortierfunktion für die Spalte aktiviert.

Hinweis: Es wird nicht empfohlen, die Sortierung für Spalten zu aktivieren, deren Werte vorhanden sind: Zahlen und gewöhnliche Zeichen, da dadurch ein lexikografischer Vergleich erfolgt. Beispiel: „Xianxin“ > „2“ > Sequenzwissen.

table.render({
  cols: [[ //其它参数在此省略
    {space: true}
    ,{field: &#39;id&#39;, title:&#39;ID&#39;, width: 100}
  ]]
});

等价于:
<th lay-data="{space:true}"></th>
<th lay-data="{field:&#39;id&#39;, width:100}">ID</th>
Nach dem Login kopieren

<7> fest: Ob feste Spalten erforderlich sind. Wenn true oder 'right' gesetzt ist, wird die entsprechende Spalte links oder rechts fixiert und nicht mit der Bildlaufleiste gescrollt.

table.render({
  cols: [[
    {sort:true} //其它参数在此省略
    ,{field:&#39;id&#39;, title:&#39;ID&#39;, width:100}
  ]]
});

等价于:
<th lay-data="{sort:true}"></th>
<th lay-data="{field:&#39;id&#39;, width:100}">ID</th>
Nach dem Login kopieren

<8> Bearbeiten: Ob die Bearbeitung zugelassen werden soll. Wenn dieser Wert auf „true“ gesetzt ist, können die Zellen in der entsprechenden Spalte bearbeitet werden. Derzeit wird nur die Eingabebearbeitung vom Typ „text“ unterstützt.

table.render({
  cols: [[
    {fixed:true} //其它参数在此省略
    ,{field:&#39;id&#39;, title:&#39;ID&#39;, width:100}
    ,{field:&#39;username&#39;, title:&#39;姓名&#39;, width:120, fixed:&#39;right&#39;} //固定列在右
  ]]
});

等价于:
<th lay-data="{sort:true}"></th>
<th lay-data="{field:&#39;id&#39;, width:100}">ID</th>
<th lay-data="{field:&#39;username&#39;, width:120, fixed:&#39;right&#39;}">姓名</th>
Nach dem Login kopieren

<9> Vorlage: Benutzerdefinierte Vorlage. Standardmäßig wird der Inhalt der Zelle genau so ausgegeben, wie er von der Datenschnittstelle zurückgegeben wird. Wenn Sie den Zellen einer bestimmten Spalte Links und andere Elemente hinzufügen möchten, können Sie dies ganz einfach mit Hilfe dieses Parameters tun. Dies ist eine sehr praktische Funktion und der Inhalt Ihrer Tabelle wird reichhaltig und vielfältig sein.

table.render({
  cols: [[
    {edit:&#39;text&#39;} //其它参数在此省略
    ,{field:&#39;id&#39;, title:&#39;ID&#39;, width:100}
  ]]
});

等价于:
<th lay-data="{edit:&#39;text&#39;}"></th>
<th lay-data="{field:&#39;id&#39;, width:100}">ID</th>
Nach dem Login kopieren

Tatsächlich kann template auch direkt ein Teil des HTML-Inhalts sein, wie zum Beispiel:

table.render({
  cols: [[
    {field:&#39;title&#39;, title: &#39;文章标题&#39;, width: 200, templet: &#39;#titleTpl&#39;} //这里的templet值是模板元素的选择器
    ,{field:&#39;id&#39;, title:&#39;ID&#39;, width:100}
  ]]
});

等价于:
<th lay-data="{field:&#39;title&#39;, width: 200, templet: &#39;#titleTpl&#39;}">文章标题</th>
<th lay-data="{field:&#39;id&#39;, width:100}">ID</th>
Nach dem Login kopieren

<10> Symbolleiste: Symbolleiste binden. Normalerweise müssen Sie in jeder Zeile der Tabelle ähnliche Bedienschaltflächen wie Anzeigen, Bearbeiten und Löschen hinzufügen. Dafür wurden Werkzeugparameter entwickelt, sodass Sie verschiedene Bedienfunktionen sehr bequem implementieren können. Der Tool-Parameter wird genauso verwendet wie der Templet-Parameter. Er akzeptiert normalerweise einen Selektor oder einen Absatz mit HTML-Zeichen.

 templet: &#39;<div><a href="/detail/{{d.id}}" class="layui-table-link">{{d.title}}</a></div>&#39;
 注意:这里一定要被一层 <div></div> 包裹,否则无法读取到模板
Nach dem Login kopieren

Das Folgende ist die der Symbolleiste entsprechende Vorlage, die an einer beliebigen Stelle auf der Seite gespeichert werden kann:

table.render({
  cols: [[
    {field:&#39;id&#39;, title:&#39;ID&#39;, width:100}
    ,{fixed: &#39;right&#39;, width:150, align:&#39;center&#39;, toolbar: &#39;#barDemo&#39;} //这里的toolbar值是模板元素的选择器
  ]]
});

等价于:
<th lay-data="{field:&#39;id&#39;, width:100}">ID</th>
<th lay-data="{fixed: &#39;right&#39;, width:150, align:&#39;center&#39;, toolbar: &#39;#barDemo&#39;}"></th>
Nach dem Login kopieren

Als nächstes verwenden wir die Symbolleistenereignisse des Tabellenmoduls, um verschiedene Bedienfunktionen auszuführen:

<script type="text/html" id="barDemo">
  <a class="layui-btn layui-btn-mini" lay-event="detail">查看</a>
  <a class="layui-btn layui-btn-mini" lay-event="edit">编辑</a>
  <a class="layui-btn layui-btn-danger layui-btn-mini" lay-event="del">删除</a>

  <!-- 这里同样支持 laytpl 语法,如: -->
  {{#  if(d.auth > 2){ }}
    <a class="layui-btn layui-btn-mini" lay-event="check">审核</a>
  {{#  } }}
</script>

注意:属性 lay-event="" 是模板的关键所在,值可随意定义。
Nach dem Login kopieren

Verwandte Empfehlungen:

layui

Das obige ist der detaillierte Inhalt vonSo verwenden Sie grundlegende Parameter im Tabellenmodul in Laui. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
Quelle:cnblogs.com
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage