Heim > Artikel > Web-Frontend > Tabellensteuerung implementiert durch tbl.js div, völlig kostenlos und nicht auf Jquery angewiesen
Es gibt jetzt ein relativ einfach zu verwendendes Tabellen-Steuerelement in HTML, das datierbar ist, aber die Bearbeitung, Schaltflächen und andere Teile sind kostenpflichtig. und nur die Grundfunktionen sind kostenlos. Darüber hinaus sind bei einer Größenänderung eine manuelle Aktualisierung und andere mühsame Vorgänge erforderlich. Deshalb habe ich ein kostenloses Programm entwickelt, das jeder nutzen kann.
Dieses Projekt wurde im „Void Service Server Development Kit“ verwendet. Derzeit werden hauptsächlich Microsoft Edge-Browser, Chreinige Browser und anderenicht getestete Browser unterstützt.
tbl.js ist völlig kostenlos und kann nach Belieben geändert werden. Willkommen fürk.
tbl.js unterstützt Listenstil, Hinzufügen, Löschen, Ändern, Abfragen, vollständige Tabelle Suche, Gruppierung, Paging-Funktion, vollständige Tabelle Bearbeiten, vollständige Zeilenbearbeitung, Einzelauswahl, Mehrfachauswahl, Stilanpassung.
kann in verschiedene Container eingebettet werden, z. B. in Dialoge und Registerkarten von jquery.
Version: 0.1beta
Melden Sie einen Fehler und ich werde ihn so schnell wie möglich beheben. Im neuen Jahr gibt es keine Pause.
Wenn Sie den Stil nicht ändern müssen, müssen Sie tbl.css nicht laden, tbl.js lädt das Stylesheet dynamisch.
Erstellen wir eine zweizeilige Tabelle, die aus einem vorhandenen DOM-Knoten erstellt wird.
1 html:<html><body><p></p></body></html> 2 new tbl(document.body.children[0],{data:[["row1"],["row2"]]});
Fügen Sie den selbst erstellten DOM-Knoten in den Dokumentkörper ein.
1 var tb = new tbl(); 2 with (document.body) { insertBefore(tb.dom, firstChild) }; 3 tb.bind([["row1"],["row2"]]);
Bei Tabellen mit mehreren Feldern sind die Spaltenbreiten mithilfe von Prozentsätzen anpassbar.
1 var tb = new tbl(undefined, {format:[{width:"20%"},{width:"20%"},{width:"20%"},{width:"20%"},{width:"20%"}]}); 2 with (document.body) { insertBefore(tb.dom, firstChild) }; 3 tb.bind([["row1","data","data","data","data"],["row2","data","data","data","data"]]);
Listenstil, maximale Höhe 300px, keine Kopfzeile, kein Titel, keine Fußzeile, 5 Datenelemente, Schaltfläche, Zeile abrufen Index.
Diese Methode führt zu Interlaced-Farbänderungen und das CSS kann geändert werden, um den Stil ungültig zu machen.
1 html:<html><body><p></p></body></html> 2 var tb = new tbl(document.body.children[0], { 3 editable: false, maxheight: "300px", header: false, title: false, footer: false, data: [[1], [2, "remove"], ["nan - not a number", "del"], [4, "del"], [5, "del"]], page_size: 100, 4 format: [ 5 { width: "90%", nancenter: true, input: {type:"text"}}, 6 { width: "10%", editable:true, input: { type: "button", value:"del", onclick: function () { tb.delete(tb.get_related_rowid(this));}}} 7 ] 8 });
Vollständige Tabellenbearbeitung, Einzelauswahl, eine Zeile muss ausgewählt werden, Paging.
Wir initialisieren zunächst Daten. Die von tbl.js gebundenen Daten müssen ein Array sein.
Ich gehe davon aus, dass die zweite Spalte unter keinen Umständen bearbeitet werden kann.
1 var tb_data = []; 2 for (var i = 0; i < 106; i++) { 3 tb_data[i] = [Math.random()>0.5?true:false, Math.random(), "1970-01-01", Math.floor(Math.random()*10), i, 0]; 4 } 5 tb_data[i] = "this is group"; i++; 6 tb_data[i] = ["this is text"]; i++; 7 for (; i < 578; i++) { 8 tb_data[i] = [i, Math.random(), "2017-02-01"]; 9 } 10 var tb = new tbl(document.body.children[0], { 11 editable:true,select:tbl.single,must_select:true,paging:true,data:tb_data,page_size:15, 12 format: [ 13 { width: "5%", input: { type: "checkbox", check: "true" } }, 14 { width: "30%", name:"name", uneditable:true }, 15 { width: "20%", name:"date", input: { type: "date" } }, 16 { width: "10%", name:"select", input: {type:"select", options:[0,1,2,3,4,5,6,7,8,9]} }, 17 { width: "20%" }, 18 { width: "15%", input: {type:"radio", name:"only"}} 19 ] 20 });
API:
Das Hinzufügen einer Datenzeile muss ein Array sein wird als Gruppentiteltext verwendet. einfügen binden neue Datenquelle bindenlöschenLöscheneine Zeile
clearAufräumen
Bearbeiten Eine Zeile bearbeiten, leere Parameter bedeutet Bearbeiten der gesamten Tabelleselect Eine Zeile auswählencancel_edit Bearbeitung abbrechen cancel_select Auswahl abbrechenselect_change Änderung auswählenFunktionEinstellungen
SchreibgeschütztEigenschaft:
tbl::selects Bereits ausgewählte Zeilen tbl::data datatbl::dom DOM nodetbl::edits Die Zeile, die bearbeitet wird, eine vollständige Tabellenbearbeitung ist nicht anwendbar Konstruktionsoptionen: max_height maximale Höhe, wenn diese überschritten wird, wird die Bildlaufleiste angezeigt page_size Seitengröße
Dateninitialisierungsdaten
Kopfzeile, ob die Kopfzeile angezeigt werden soll
Fußzeile, ob die Fußzeile angezeigt werden soll
Info, ob Informationen angezeigt werden sollen
Paging Ob Paginierung angezeigt werden soll
title_bar Titelleiste anzeigen
Titel Titelleistentext
Suche Suchfeld anzeigen
bearbeitbar Vollständige Tabellenbearbeitung
auswählen Typ auswählen : 0, kann nicht ausgewählt werden. 2, multi-select.tbl.single == 1, tbl.multiselect == 2
select_change Auswahl festlegen
Funktion must_select Es muss ein Zeilenformat ausgewählt werden. Spaltenformat
Breite Breite, kann eine gültige HTML-Breite sein. Beispiel: 100px oder 20 %.
Eingabe wird verwendet, um das Eingabeknotenattribut von
Status
zu bearbeiten, das mit dem in der Tabelle angezeigten HTML/Eingabeattribut Namensfeldname identisch ist Kopfzeile nicht bearbeitbare Spalte kann nicht bearbeitet werden
bearbeitbare Spalten werden immer im bearbeitbaren Zustand sein
nancenter nicht-numerisches Zentrum
Das obige ist der detaillierte Inhalt vonTabellensteuerung implementiert durch tbl.js div, völlig kostenlos und nicht auf Jquery angewiesen. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!