Prty::Html::Table::Simple - HTML-Tabelle
Prty::Hash
Die Klasse dient der Generierung von HTML-Tabellen mit einer freien Struktur, wie Formulartabellen. Die Definition erfolgt zeilenweise wie in HTML, wobei die tr- und td-Information durch Listen angegeben werden.
tr
td
Der Wert des Objekt-Attributs rows, das den Inhalt der Tabelle definiert, hat den Aufbau:
rows
[[@keyValTr,[@keyValTd,$content],...],...] ^^ ^ ^ ^ || | | weitere Zeilen || | weitere Kolumnen || erste Kolumne |erste Zeile mit Attributen @keyValTr Array der Zeilen
Die Listen @keyValTr und @KeyValTd definieren die Attribute der tr- bzw. td-Tags. Besteht @keyValTr aus einer ungeraden Anzahl an Elementen, wird das erste Element $val als Klassenname interpretiert und zu class=>$val expandiert.
@keyValTr
@KeyValTd
$val
class=>$val
border-Attribut der Tabelle.
border
cellpadding-Attribut der Tabelle.
cellpadding
cellspacing-Attribut der Tabelle.
cellspacing
class-Attribut der Tabelle.
class
data-* Attribute der Tabelle.
data-*
DOM-Id der Tabelle.
Liste der Zeilen (und Kolumnen).
style-Attribut der Tabelle.
style
width-Attribut der Tabelle.
width
Klasse:
$html = Prty::Html::Table::Simple->html($h, class=>'my-table', border=>1, rows=>[ ['my-title',['A'],[colspan=>2,'B']], [[rowspan=>2,'a1'],['de'],['Text1_de']], [['en'],['Text1_en']], [[rowspan=>2,'a2'],['de'],['Text2_de']], [['en'],['Text2_en']], ], );
tr-Angabe 'my-title' ist äquivalent zu class=>'my-title'
'my-title'
class=>'my-title'
Aussehen:
+--+-----------+ |A |B | +--+--+--------+ | |de|Text1_de| |a1+--+--------+ | |en|Text1_en| +--+--+--------+ | |de|Text2_de| |a2+--+--------+ | |en|Text2_wn| +--+--+--------+
HTML:
<table class="my-table" border="1" cellspacing="0"> <tr class="my-title"> <td>A</td> <td colspan="2">B</td> </tr> <tr> <td rowspan="2">a1</td> <td>de</td> <td>Text1_de</td> </tr> <tr> <td>en</td> <td>Text1_en</td> </tr> <tr> <td rowspan="2">a2</td> <td>de</td> <td>Text2_de</td> </tr> <tr> <td>en</td> <td>Text2_en</td> </tr> </table>
$e = $class->new(@keyVal);
Instantiiere ein Tabellen-Objekt und liefere eine Referenz auf dieses Objekt zurück.
$html = $e->html($h); $html = $class->html($h,@keyVal);
Generiere den HTML-Code des Tabellen-Objekts und liefere diesen zurück. Als Klassenmethode gerufen, wird das Objekt intern erzeugt und mit den Attributen @keyVal instantiiert.
1.101
Frank Seitz, http://fseitz.de/
Copyright (C) 2016 Frank Seitz
This code is free software; you can redistribute it and/or modify it under the same terms as Perl itself.
To install Prty, copy and paste the appropriate command in to your terminal.
cpanm
cpanm Prty
CPAN shell
perl -MCPAN -e shell install Prty
For more information on module installation, please visit the detailed CPAN module installation guide.