In diesem Artikel erfahren Sie, wie Sie die Bootstrap-Tabelle zu Ihrer Information verwenden. Der spezifische Inhalt ist wie folgt Offizielle Website-Informationen Effektbild:Beispiele:html <!-- Tabelle --> <table id="ffServerSystemCheckListTable" Daten-Werkzeugleiste = "Werkzeugleiste" Daten-Show-Spalten = "true" Daten-zeigen-Spalten-toggle-all="true"> <%-- <thead>--%> <%-- <tr>--%> <%-- <th data-field="cityName">Kennung</th>--%> <%-- <th data-field="cityName">Artikelname</th>--%> <%-- <th data-field="cityName">Artikelpreis</th>--%> <%-- </tr>--%> <%-- </thead>--%> </Tabelle> JavaScript $(Dokument).bereit(Funktion () { //Tabellen-Plugin mytable=$('#ffServerSystemCheckListTable').bootstrapTable({ //Anforderungsmethode: 'post', //Typ json Datentyp: "json", Inhaltstyp: "application/x-www-form-urlencoded", //Suchschaltfläche anzeigen //showSearch: false, //Aktualisieren-Schaltfläche anzeigen showRefresh: false, //Schaltfläche zum Wechseln der Telefonansicht anzeigen showToggle: false, //Dropdown-Box der Inhaltsspalte anzeigen showColumns: false, //Schaltfläche überall anzeigen showExport: false, //Schaltfläche zum Umschalten der Seiten anzeigen showPaginationSwitch: false, // Mindestens 2 Zeilen anzeigen minimumCountColumns: 2, //Ob die Zeilenabstandsfarbe angezeigt werden soll//gestreift: true, //Gibt an, ob der Cache verwendet werden soll. Der Standardwert ist „true“. Daher müssen Sie diese Eigenschaft im Allgemeinen festlegen (*) Cache: falsch, //Ob die Paginierung angezeigt werden soll (*) Seitennummerierung: wahr, //Sortiermethode sortOrder: "asc", //Laden der ersten Seite initialisieren, Standard-Erstseite Seitennummer: 1, //Anzahl der Zeilen pro Seite (*) Seitengröße: 10, //Anzahl der zur Auswahl stehenden Zeilen pro Seite (*) Seitenliste: [10, 25, 50, 100], //Diese Schnittstelle muss die von der Bootstrap-Tabelle übergebenen festen Parameter verarbeiten und die JSON-Daten in einer bestimmten Format-URL zurückgeben: "${ctx}/ff/server/ffServerSystemCheck/data", //Der Standardwert ist „Limit“, die an den Server übergebenen Parameter sind: Limit, Offset, Suche, Sortierung, Reihenfolge. Sonst //AbfrageParamsTyp:'', Abfrageparameter, jeder Aufruf enthält diesen Parameter, Sie können queryParams anpassen: function (params) { var searchParam = $("#searchForm").serializeJSON(); searchParam.pageNo = params.limit === undefiniert? "1" : params.offset / params.limit + 1; searchParam.pageSize = params.limit === undefiniert? -1 : params.limit; searchParam.orderBy = params.sort === undefiniert ? "" : params.sort + " " + params.order; Suchparameter zurückgeben; }, //Paging-Modus: Client-Paging, Server-Paging (*) Seitenpaginierung: "Server", // contextMenuTrigger: „right“, //Drücken Sie die rechte Taste auf dem PC, um das Menü aufzurufen. // contextMenuTriggerMobile: „press“, //Drücken Sie, um das Menü auf dem Mobiltelefon aufzurufen. Klicken: einmaliges Klicken, Drücken: langes Drücken. // Kontextmenü: '#Kontextmenü', onClickRow: Funktion (Zeile, $el) { Zeilen-ID = Zeilen-ID; }, onShowSearch: Funktion () { $("#search-collapse").slideToggle(); }, responseHandler: Funktion (res) {//Wird zum Empfangen anderer Parameter verwendet return res; }, onPreBody: Funktion (res) {}, bei erfolgreichem Laden: Funktion() {}, onPostHeader: Funktion () {}, beiAllem: Funktion () {}, Spalten: [ [ { Feld: 'Stadtname', Titel: 'Stadtgesellschaft', Zeilenspanne: 2, Formatierer: Funktion (Wert, Zeile, Index) { Rückgabewert; } } , { Feld: 'Projektname', Titel: 'Projektname', Zeilenspanne: 2 }, { Titel: 'Homepage-Karussell', Spaltenbreite: 2, ausrichten: "zentriert" }, { Titel: 'Nachricht', Spaltenbreite: 2, ausrichten: "zentriert" }, { Titel: 'Postervorlage', Spaltenbreite: 2, ausrichten: "zentriert" }, { Titel: 'Immobiliendynamik', Spaltenbreite: 2, ausrichten: "zentriert" }, { Titel: 'Verkaufsargument des Projekts', Spaltenbreite: 2, ausrichten: "zentriert" }, { Titel: 'Projektplakat', Spaltenbreite: 2, ausrichten: "zentriert" }, { Titel: 'Projektvideo', Spaltenbreite: 2, ausrichten: "zentriert" }], [{ Feld: 'newsCount', Titel: 'Aktualisierungszeiten', } , { Feld: 'newsState', Titel:"-", Klasse: 'newsTitle', Formatierer: Funktion (Wert, Zeile, Index) { if (Wert=='nicht qualifiziert') { return "<span style=\"color: red;\">Nicht qualifiziert<span>"; } Rückgabewert; // return jp.getDictLabel(${fns:toJson(fns:getDictList('cooperation_flag'))}, Wert, "-"); } } , { Feld: 'msgCount', Titel: „Aktualisierungszeiten“ } , { Feld: 'msgState', Titel: '-', Klasse: 'msgTitle', Formatierer: Funktion (Wert, Zeile, Index) { if (Wert=='nicht qualifiziert') { return "<span style=\"color: red;\">Nicht qualifiziert<span>"; } Rückgabewert; } } , { Feld: 'tempCount', Titel: „Aktualisierungszeiten“ }, { Feld: 'tempState', Titel: '-', Klasse: 'tempTitle', Formatierer: Funktion (Wert, Zeile, Index) { if (Wert=='nicht qualifiziert') { return "<span style=\"color: red;\">Nicht qualifiziert<span>"; } Rückgabewert; } }, { Feld: 'houseCount', Titel: „Aktualisierungszeiten“ }, { Feld: 'houseState', Titel: '-', Klasse: 'Haustitel', Formatierer: Funktion (Wert, Zeile, Index) { if (Wert=='nicht qualifiziert') { return "<span style=\"color: red;\">Nicht qualifiziert<span>"; } Rückgabewert; } }, { Feld: 'sellCount', Titel: „Aktualisierungszeiten“ }, { Feld: 'sellState', Titel: '-', Klasse: 'Titel verkaufen', Formatierer: Funktion (Wert, Zeile, Index) { if (Wert=='nicht qualifiziert') { return "<span style=\"color: red;\">Nicht qualifiziert<span>"; } Rückgabewert; } }, { Feld: 'postCount', Titel: „Aktualisierungszeiten“ }, { Feld: 'postState', Titel: '-', Klasse: 'Posttitel', Formatierer: Funktion (Wert, Zeile, Index) { if (Wert=='nicht qualifiziert') { return "<span style=\"color: red;\">Nicht qualifiziert<span>"; } Rückgabewert; } }, { Feld: 'videoCount', Titel: „Aktualisierungszeiten“ } , { Feld: 'videoState', Titel: '-', Klasse: 'Videotitel', Formatierer: Funktion (Wert, Zeile, Index) { if (Wert=='nicht qualifiziert') { return "<span style=\"color: red;\">Nicht qualifiziert<span>"; } Rückgabewert; } } ] ] }); if (navigator.userAgent.match(/(iPhone|iPod|Android|ios)/i)) {//Wenn es ein mobiles Endgerät ist$('#ffServerSystemCheckListTable').bootstrapTable("toggleView"); } $('#ffServerSystemCheckListTable').on('check.bs.table uncheck.bs.table load-success.bs.table ' + 'alles.bs.table überprüfen, nichts.bs.table überprüfen', Funktion () { $('#remove').prop('deaktiviert', !$('#ffServerSystemCheckListTable').bootstrapTable('getSelections').length); $('#batchSet').prop('deaktiviert', !$('#ffServerSystemCheckListTable').bootstrapTable('getSelections').length); $('#view,#edit').prop('deaktiviert', $('#ffServerSystemCheckListTable').bootstrapTable('getSelections').length != 1); }); // Abfrageschaltfläche binden $("#search").click("click", function () { //Tabellenparameter neu laden// $('#ffServerSystemCheckListTable').bootstrapTable("refreshOptions", { // //url: Pfad + "/api/peopledataInfo/getPeopleInfoList", // Adresse zum Abrufen der Daten// Spalten: [], // // }); //Dynamische Header-Einstellungen $.ajax({ URL: "${ctx}/ff/server/ffServerSystemCheck/checkInfo", // Typ: "POST", Daten: $("#searchForm").serialize(), Erfolg: Funktion (Daten) { $(".newsTitle .th-inner").html(data.newsTitle); $(".msgTitle .th-inner").html(data.msgTitle); $(".tempTitle .th-inner").html(data.tempTitle); $(".houseTitle .th-inner").html(data.houseTitle); $(".sellTitle .th-inner").html(data.sellTitle); $(".postTitle .th-inner").html(data.postTitle); $(".videoTitle .th-inner").html(data.videoTitle); $('#ffServerSystemCheckListTable').bootstrapTable('aktualisieren'); } }); }); }); Java Regler: @AntwortBody @RequestMapping(Wert = "Daten") öffentliche Map<String, Object> Daten(HttpServletRequest-Anforderung, HttpServletResponse-Antwort) { Seite<FfServerSystemCheck> Seite = Server.findWebPage(neue Seite<FfServerSystemCheck>(Anfrage, Antwort)); Map<String, Objekt> map = neue HashMap<String, Objekt>(); map.put("Zeilen", page.getList()); map.put("gesamt", page.getCount()); Daten zurückgeben; } xml: <select id="findWebList" resultType="com.jeeplus.modules.ff.server.entity.FfServerSystemCheck"> <if test="dateTypeAll == '0'.toString() oder dateTypeAll == '1'.toString() oder dateTypeAll=='gestern' oder dateTypeAll=='heute'"> wählen Stadtname, Projektname, newsCount, '-' Nachrichtenstatus, Nachrichtenanzahl, '-' Nachrichtenstatus, Temperaturzähler, '-' Temperaturzustand, Hausanzahl, '-' Hausstaat, verkaufeCount, '-' Verkaufsstatus, BeiträgeAnzahl, '-' postState, Videoanzahl, '-' Videostatus </if> <if test="dateTypeAll == 'Wochen' oder dateTypeAll == 'Monat' oder dateTypeAll=='Halbjahr' oder dateTypeAll=='Jahre'"> wählen Stadtname, Projektname, newsCount, CASE WHEN newsCount > #{newsNum} THEN 'Qualifiziert' ELSE 'Unqualifiziert' END newsState, Nachrichtenanzahl, CASE WHEN msgCount > #{msgNum} THEN 'Bestanden' ELSE 'Nicht bestanden' END msgState, Temperaturzähler, CASE WHEN tempCount > #{tempNum} THEN 'Qualifiziert' ELSE 'Unqualifiziert' END tempState, Hausanzahl, CASE WHEN houseCount > #{houseNum} THEN 'Qualifiziert' ELSE 'Unqualifiziert' END houseState, verkaufeCount, CASE WHEN sellCount > #{sellNum} THEN 'Qualifiziert' ELSE 'Unqualifiziert' END sellState, BeiträgeAnzahl, CASE WHEN postCount > #{postNum} THEN 'Qualifiziert' ELSE 'Unqualifiziert' END postState, Videoanzahl, CASE WHEN videoCount > #{videoNum} THEN ‚Qualifiziert‘ ELSE ‚Unqualifiziert‘ END videoState </if> aus ( WÄHLEN so.NAME Stadtname, pm.project_name Projektname, ( SELECT count(*) FROM ff_server_news_manage WHERE project_id = pm.id <if test="startDate != null und startDate != ''"> UND DATE_FORMAT(pm.create_date,'%Y-%m-%d') <![CDATA[>=]]> #{startDate} </if> <if test="endDate != null und endDate != ''"> UND DATE_FORMAT(pm.create_date,'%Y-%m-%d') <![CDATA[<=]]> #{endDate} </if> ) NachrichtenCount, ( SELECT count(*) FROM ff_server_message_manage WHERE project_id = pm.id <if test="startDate != null und startDate != ''"> UND DATE_FORMAT(pm.create_date,'%Y-%m-%d') <![CDATA[>=]]> #{startDate} </if> <if test="endDate != null und endDate != ''"> UND DATE_FORMAT(pm.create_date,'%Y-%m-%d') <![CDATA[<=]]> #{endDate} </if> ) Nachrichtenanzahl, ( SELECT count(*) FROM ff_tuoke_poster_template WHERE project_id = pm.id <if test="startDate != null und startDate != ''"> UND DATE_FORMAT(pm.create_date,'%Y-%m-%d') <![CDATA[>=]]> #{startDate} </if> <if test="endDate != null und endDate != ''"> UND DATE_FORMAT(pm.create_date,'%Y-%m-%d') <![CDATA[<=]]> #{endDate} </if> ) tempCount, ( SELECT Anzahl(*) FROM ff_server_houses_dynamic WHERE Projekt-ID = pm.id <if test="startDate != null und startDate != ''"> UND DATE_FORMAT(pm.create_date,'%Y-%m-%d') <![CDATA[>=]]> #{startDate} </if> <if test="endDate != null und endDate != ''"> UND DATE_FORMAT(pm.create_date,'%Y-%m-%d') <![CDATA[<=]]> #{endDate} </if> ) HausAnzahl, (AUSWÄHLEN Anzahl(FALL, WENN Typ = 0, DANN 1, ENDE) VON ff_server_talk_tool, WO Projekt-ID = pm.id <if test="startDate != null und startDate != ''"> UND DATE_FORMAT(pm.create_date,'%Y-%m-%d') <![CDATA[>=]]> #{startDate} </if> <if test="endDate != null und endDate != ''"> UND DATE_FORMAT(pm.create_date,'%Y-%m-%d') <![CDATA[<=]]> #{endDate} </if> ) verkaufenAnzahl, ( SELECT Anzahl ( CASE WHEN Typ = 1 THEN 1 END ) FROM ff_server_talk_tool WHERE Projekt-ID = pm.id <if test="startDate != null und startDate != ''"> UND DATE_FORMAT(pm.create_date,'%Y-%m-%d') <![CDATA[>=]]> #{startDate} </if> <if test="endDate != null und endDate != ''"> UND DATE_FORMAT(pm.create_date,'%Y-%m-%d') <![CDATA[<=]]> #{endDate} </if> ) Beitragsanzahl, (AUSWÄHLEN Anzahl(FALL, WENN Typ = 2, DANN 1, ENDE) VON ff_server_talk_tool, WO Projekt-ID = pm.id <if test="startDate != null und startDate != ''"> UND DATE_FORMAT(pm.create_date,'%Y-%m-%d') <![CDATA[>=]]> #{startDate} </if> <if test="endDate != null und endDate != ''"> UND DATE_FORMAT(pm.create_date,'%Y-%m-%d') <![CDATA[<=]]> #{endDate} </if> ) VideoAnzahl AUS sys_office so INNER JOIN ff_server_project_manage pm ON pm.city_company = so.id <wo> ${Datenbereich} <if test="cityCompanyId != null und cityCompanyId != ''"> UND so.id = #{cityCompanyId} </if> </wo> GRUPPELN NACH pm.projektname BESTELLEN NACH pm.create_date DESC ) als </Auswählen> Seitenobjekt /** * Copyright © 2015-2020 <a href="http://www.jeeplus.org/" rel="external nofollow" >JeePlus</a> Alle Rechte vorbehalten. */ Paket com.jeeplus.core.persistence; importiere java.util.ArrayList; importiere java.util.List; importiere java.util.regex.Pattern; importiere javax.servlet.http.HttpServletRequest; importiere javax.servlet.http.HttpServletResponse; importiere org.apache.commons.lang3.StringUtils; importiere com.fasterxml.jackson.annotation.JsonIgnore; importiere com.jeeplus.common.config.Global; importiere com.jeeplus.common.utils.CookieUtils; /** * Paginierungsklasse * @author jeeplus * @version 2016-7-2 * @param <T> */ öffentliche Klasse Page<T> { protected int pageNo = 1; // Aktuelle Seitennummer protected int pageSize = Integer.valueOf(Global.getConfig("page.pageSize")); // Seitengröße, auf "-1" setzen, um keine Seitennummerierung anzuzeigen (Seitennummerierung ist ungültig) protected long count;//Gesamtzahl der Datensätze, auf „-1“ setzen, um anzuzeigen, dass die Gesamtzahl nicht abgefragt wird protected int first;//Index der Startseite protected int last;//Index der Endseite protected int prev;//Index der vorherigen Seite protected int next;//Index der nächsten Seite private boolean firstPage;//Ist es die erste Seite private boolean lastPage;//Ist es die letzte Seite protected int length = 8;//Länge der Anzeigeseite protected int slider = 1;//Länge der vorherigen und nächsten Anzeigeseite private List<T> list = new ArrayList<T>(); private String orderBy = ""; // Standardabfrage ist gültig, Beispiel: updatedate desc, name asc geschützter String funcName = "Seite"; // Legen Sie den Namen der JS-Funktion fest, die beim Klicken auf die Seitenzahl aufgerufen wird. Der Standardwert ist Seite, der verwendet wird, wenn sich auf einer Seite mehrere Seitenobjekte befinden. protected String funcParam = ""; // Zusätzliche Funktionsparameter, der dritte Parameterwert. private String message = ""; // Legen Sie die Eingabeaufforderungsnachricht fest, die nach „Gesamt n Elemente“ angezeigt werden soll. public Page() { diese.Seitengröße = -1; } /** * Konstruktionsmethode* @param-Anfrage übergibt den Repage-Parameter, um sich die Seitennummer zu merken* @param-Antwort wird verwendet, um Cookie zu setzen und sich die Seitennummer zu merken*/ öffentliche Seite (HttpServletRequest-Anfrage, HttpServletResponse-Antwort) { dies (Anfrage, Antwort, -2); } /** * Konstruktionsmethode* @param request übergibt den repage-Parameter, um sich die Seitennummer zu merken.* @param response wird verwendet, um Cookie zu setzen, um sich die Seitennummer zu merken.* @param defaultPageSize Standard-Paging-Größe, wenn -1 übergeben wird, wird kein Paging durchgeführt und alle Daten zurückgegeben.*/ öffentliche Seite (HttpServletRequest-Anforderung, HttpServletResponse-Antwort, int Standardseitengröße) { // Legen Sie die Seitenzahlparameter fest (übergeben Sie den Parameter „repage“, um sich die Seitenzahl zu merken) Zeichenfolge Nr. = Anfrage.getParameter("Seitennr."); wenn (StringUtils.isNumeric(no)){ CookieUtils.setCookie(Antwort, "Seitennr", nein); Dies.setPageNo(Integer.parseInt(no)); }sonst wenn (request.getParameter("repage")!=null){ nein = CookieUtils.getCookie(Anfrage, "Seitennr"); wenn (StringUtils.isNumeric(no)){ Dies.setPageNo(Integer.parseInt(no)); } } // Legen Sie die Seitengrößenparameter fest (übergeben Sie den Repage-Parameter, um die Seitengröße zu speichern) Zeichenfolgengröße = Anfrage.getParameter("Seitengröße"); wenn (StringUtils.isNumeric(Größe)){ CookieUtils.setCookie(Antwort, "Seitengröße", Größe); this.setPageSize(Integer.parseInt(Größe)); }sonst wenn (request.getParameter("repage")!=null){ nein = CookieUtils.getCookie(Anfrage, "Seitengröße"); wenn (StringUtils.isNumeric(Größe)){ this.setPageSize(Integer.parseInt(Größe)); } }sonst wenn (StandardSeitengröße != -2){ this.pageSize = StandardSeitengröße; }sonst wenn ("-1".equals(Größe)){ diese.Seitengröße = -1; } //Sortierparameter festlegen String orderBy = request.getParameter("orderBy"); wenn (StringUtils.isNotBlank(orderBy)){ dies.setOrderBy(orderBy); } } /** * Konstruktor* @param pageNo aktuelle Seitenzahl* @param pageSize Seitengröße*/ öffentliche Seite(int Seitennummer, int Seitengröße) { dies(Seitennummer, Seitengröße, 0); } /** * Konstruktionsmethode* @param pageNo aktuelle Seitenzahl* @param pageSize Seitengröße* @param count Anzahl der Datenelemente*/ öffentliche Seite(int Seitennummer, int Seitengröße, lange Anzahl) { dies(Seitennummer, Seitengröße, Anzahl, neue ArrayList<T>()); } /** * Konstruktionsmethode* @param pageNo aktuelle Seitennummer* @param pageSize Seitengröße* @param count Anzahl der Datenelemente* @param list Liste der Datenobjekte auf dieser Seite*/ öffentliche Seite(int Seitennummer, int Seitengröße, lange Anzahl, Liste<T> Liste) { dies.setCount(Anzahl); this.setPageNo(Seitennummer); this.pageSize = Seitengröße; diese.liste = Liste; } /** * Initialisierungsparameter */ public void initialisieren() { //1 dies.zuerst = 1; this.last = (int)(Anzahl / (diese.Seitengröße < 1 ? 20 : diese.Seitengröße) + erste - 1); wenn (this.count % this.pageSize != 0 || this.last == 0) { dies.letzte++; } wenn (dieses.letztes < dieses.erstes) { dies.letztes = dies.erstes; } wenn (diese.Seitennummer <= 1) { diese.Seitennr. = diese.zuerst; diese.ersteSeite=true; } wenn (diese.Seitennummer >= diese.letzte) { diese.Seitennr. = diese.letzte; diese.letzteSeite=true; } wenn (diese.Seitennummer < diese.letzte - 1) { dies.nächstes = diese.Seitennummer + 1; } anders { dies.nächstes = dies.letztes; } wenn (diese.Seitennummer > 1) { this.prev = diese.Seitennummer - 1; } anders { dies.vorheriges = dies.zuerst; } //2 if (this.pageNo < this.first) {// Wenn die aktuelle Seite kleiner als die Startseite ist, this.pageNo = this.first; } if (this.pageNo > this.last) {// Wenn die aktuelle Seite größer ist als die letzte Seite this.pageNo = this.last; } } /** * Standardmäßig das aktuelle Seiten-Tag ausgeben* <div class="page">${page}</div> */ @Überschreiben öffentliche Zeichenfolge toString() { StringBuilder sb = neuer StringBuilder(); sb.append("<div class=\"fixed-table-pagination\" style=\"display: block;\">"); // sb.append("<div class=\"dataTables_info\">"); // sb.append("<li class=\"disabled controls\"><a href=\"javascript:\">Aktuell"); // sb.append("<input type=\"text\" value=\""+pageNo+"\" onkeypress=\"var e=window.event||this;var c=e.keyCode||e.which;if(c==13)"); // sb.append(funcName+"(this.value,"+pageSize+",'"+funcParam+"');\" onclick=\"this.select();\"/> / "); // sb.append("<input type=\"text\" value=\""+pageSize+"\" onkeypress=\"var e=window.event||this;var c=e.keyCode||e.which;if(c==13)"); // sb.append(funcName+"("+pageNo+",this.value,'"+funcParam+"');\" onclick=\"this.select();\"/>,"); // sb.append("Gesamt" + Anzahl + ""+(message!=null?message:"")+"</a></li>\n"); // sb.anhängen("</div>"); langer Startindex = (Seitennummer-1)*Seitengröße + 1; long endIndex = Seitennr.*Seitengröße <=Anzahl? Seitennr.*Seitengröße:Anzahl; sb.append("<div class=\"pull-left pagination-detail\">"); sb.append("<span class=\"pagination-info\">Datensätze von "+startIndex+" bis "+ endIndex +" anzeigen, insgesamt "+count+" Datensätze</span>"); sb.append("<span class=\"page-list\">Anzeige pro Seite<span class=\"btn-group dropup\">"); sb.append("<button type=\"button\" class=\"btn btn-default btn-outline dropdown-toggle\" data-toggle=\"dropdown\" aria-expanded=\"false\">"); sb.append("<span class=\"page-size\">"+Seitengröße+"</span> <span class=\"caret\"></span>"); sb.anhängen("</button>"); sb.append("<ul class=\"dropdown-menu\" role=\"menu\">"); sb.append("<li class=\""+getSelected(pageSize,10)+ "\"><a href=\"javascript:"+funcName+"("+pageNo+",10,'"+funcParam+"');\">10</a></li>"); sb.append("<li class=\""+getSelected(pageSize,25)+ "\"><a href=\"javascript:"+funcName+"("+pageNo+",25,'"+funcParam+"');\">25</a></li>"); sb.append("<li class=\""+getSelected(pageSize,50)+ "\"><a href=\"javascript:"+funcName+"("+pageNo+",50,'"+funcParam+"');\">50</a></li>"); sb.append("<li class=\""+getSelected(pageSize,100)+ "\"><a href=\"javascript:"+funcName+"("+pageNo+",100,'"+funcParam+"');\">100</a></li>"); sb.anhängen("</ul>"); sb.append("</span> Datensätze</span>"); sb.anhängen("</div>"); // sb.append("<p>Jede Seite<select onChange=\""+funcName+"("+pageNo+",this.value,'"+funcParam+"');\"" +"style=\"display:display !important;\" class=\"form-control mb input-sm\">" + // "<option value=\"10\" "+getSelected(pageSize,10)+ ">10</option>" + // "<option value=\"25\" "+getSelected(pageSize,25)+ ">25</option>" + // "<option value=\"50\" "+getSelected(pageSize,50)+ ">50</option>" + // "<option value=\"100\" "+getSelected(pageSize,100)+ ">100</option>" + // "</select> Datensätze, die die Datensätze " +startIndex+ " bis "+ endIndex +" anzeigen, insgesamt "+count+" Datensätze</p>"); // sb.anhängen("</div>"); // sb.anhängen("</div>"); sb.append("<div class=\"pull-right pagination-roll\">"); sb.append("<ul class=\"pagination pagination-outline\">"); if (pageNo == first) {// Wenn es die Startseite ist, sb.append("<li class=\"paginate_button previous disabled\"><a href=\"javascript:\"><i class=\"fa fa-angle-double-left\"></i></a></li>\n"); sb.append("<li class=\"paginate_button previous disabled\"><a href=\"javascript:\"><i class=\"fa fa-angle-left\"></i></a></li>\n"); } anders { sb.append("<li class=\"paginate_button previous\"><a href=\"javascript:\" onclick=\""+funcName+"("+first+","+pageSize+",'"+funcParam+"');\"><i class=\"fa fa-angle-double-left\"></i></a></li>\n"); sb.append("<li class=\"paginate_button previous\"><a href=\"javascript:\" onclick=\""+funcName+"("+prev+","+pageSize+",'"+funcParam+"');\"><i class=\"fa fa-angle-left\"></i></a></li>\n"); } int begin = Seitennummer - (Länge / 2); wenn (beginnen < zuerst) { begin = zuerst; } int Ende = Beginn + Länge - 1; wenn (Ende >= letztes) { Ende = letztes; Anfang = Ende - Länge + 1; wenn (beginnen < zuerst) { begin = zuerst; } } wenn (beginnen > zuerst) { } für (i = erstes; i < erstes + Schieberegler und i < beginne; i++) { sb.append("<li class=\"paginate_button \"><a href=\"javascript:\" onclick=\""+funcName+"("+i+","+pageSize+",'"+funcParam+"');\">" + (i + 1 - zuerst) + "</a></li>\n"); } wenn (i < beginne) { sb.append("<li class=\"paginate_button deaktiviert\"><a href=\"javascript:\">...</a></li>\n"); } } für (int i = beginne; i <= end; i++) { if (i == Seitennummer) { sb.append("<li class=\"paginate_button active\"><a href=\"javascript:\">" + (i + 1 - zuerst) + "</a></li>\n"); } anders { sb.append("<li class=\"paginate_button \"><a href=\"javascript:\" onclick=\""+funcName+"("+i+","+pageSize+",'"+funcParam+"');\">" + (i + 1 - zuerst) + "</a></li>\n"); } } if (letztes - Ende > Schieberegler) { sb.append("<li class=\"paginate_button deaktiviert\"><a href=\"javascript:\">...</a></li>\n"); Ende = letzter - Schieberegler; } für (int i = Ende + 1; i <= letztes; i++) { sb.append("<li class=\"paginate_button \"><a href=\"javascript:\" onclick=\""+funcName+"("+i+","+pageSize+",'"+funcParam+"');\">" + (i + 1 - zuerst) + "</a></li>\n"); } wenn (Seitennr. == letzte) { sb.append("<li class=\"paginate_button next deaktiviert\"><a href=\"javascript:\"><i class=\"fa fa-angle-right\"></i></a></li>\n"); sb.append("<li class=\"paginate_button next disabled\"><a href=\"javascript:\"><i class=\"fa fa-angle-double-right\"></i></a></li>\n"); } anders { sb.append("<li class=\"paginate_button next\"><a href=\"javascript:\" onclick=\""+funcName+"("+next+","+pageSize+",'"+funcParam+"');\">" + "<i class=\"fa fa-angle-right\"></i></a></li>\n"); sb.append("<li class=\"paginate_button next\"><a href=\"javascript:\" onclick=\""+funcName+"("+last+","+pageSize+",'"+funcParam+"');\">" + "<i class=\"fa fa-angle-double-right\"></i></a></li>\n"); } sb.anhängen("</ul>"); sb.anhängen("</div>"); sb.anhängen("</div>"); // sb.insert(0,"<ul>\n").anhängen("</ul>\n"); // sb.anhängen("<div style=\"clear:both;\"></div>"); // sb.insert(0,"<div class=\"page\">\n").anhängen("</div>\n"); gibt sb.toString() zurück; } geschützter String getSelected(int Seitennr., int ausgewählteSeitennr.){ wenn(Seitennr. == ausgewählteSeitennr.){ // „ausgewählt“ zurückgeben; gebe "aktiv" zurück; }anders{ zurückkehren ""; } } /** * Holen Sie sich den HTML-Code für die Paginierung * @return */ öffentliche Zeichenfolge getHHTml(){ zurück zuString(); } // öffentliche statische void main(String[] args) { // Seite<String> p = neue Seite<String>(3, 3); // System.out.println(p); // System.out.println("Home: "+p.getFirst()); // System.out.println("Letzte Seite: "+p.getLast()); // System.out.println("Vorherige Seite: "+p.getPrev()); // System.out.println("Nächste Seite: "+p.getNext()); // } /** * Gesamtzahl der Einstellungen abrufen * @return */ öffentliche lange getCount() { Anzahl zurückgeben; } /** * Legen Sie die Gesamtzahl der Daten fest * @param count */ öffentliche void setCount(lange Anzahl) { dies.Anzahl = Anzahl; if (Seitengröße >= Anzahl){ Seitennummer = 1; } } /** * Aktuelle Seitenzahl abrufen * @return */ öffentliche int getPageNo() { Seite zurückgebenNr. } /** * Aktuelle Seitenzahl festlegen * @param pageNo */ public void setSeitennr(int Seitennr) { this.pageNo = Seitennummer; } /** * Seitengröße ermitteln * @return */ öffentliche int getPageSize() { Seitengröße zurückgeben; } /** * Seitengröße festlegen (maximal 500) * @param Seitengröße */ public void setPageSize(int Seitengröße) { this.pageSize = Seitengröße <= 0 ? 10 : Seitengröße; // > 500 ? 500 : Seitengröße; } /** * Index der Startseite * @return */ @JsonIgnorieren öffentliche int getFirst() { zuerst zurückkehren; } /** * Index der letzten Seite * @return */ @JsonIgnorieren öffentliche int getLast() { kehre als Letzter zurück; } /** * Gesamtseitenzahl abrufen * @return getLast(); */ @JsonIgnorieren öffentliche int getTotalPage() { gibt getLast() zurück; } /** * Ist es die erste Seite? * @return */ @JsonIgnorieren public boolean istErsteSeite() { gib die erste Seite zurück; } /** * Ist es die letzte Seite? * @return */ @JsonIgnorieren public boolean istLetzteSeite() { letzte Seite zurückgeben; } /** * Indexwert der vorherigen Seite * @return */ @JsonIgnorieren öffentliche int getPrev() { if (istErsteSeite()) { Seite zurückgebenNr. } anders { Zurück zur Seitennummer: 1; } } /** * Indexwert der nächsten Seite * @return */ @JsonIgnorieren öffentliche int getNext() { if (isLastPage()) { Seite zurückgebenNr. } anders { Seite zurückgebenNr. + 1; } } /** * Holen Sie sich die Datenobjektliste dieser Seite * @return List<T> */ öffentliche Liste<T> getList() { Liste zurückgeben; } /** * Legen Sie die Datenobjektliste dieser Seite fest * @param list */ öffentliche Seite<T> setzeListe(Liste<T> Liste) { diese.liste = Liste; initialisieren(); gib dies zurück; } /** * Holen Sie sich die Sortierzeichenfolge der Abfrage * @return */ @JsonIgnorieren öffentliche Zeichenfolge getOrderBy() { // SQL-Filterung zur Verhinderung von Injektionen String reg = "(?:')|(?:--)|(/\\*(?:.|[\\n\\r])*?\\*/)|" + "(\\b(auswählen|aktualisieren|und|oder|löschen|einfügen|transkribieren|char|in|substr|ascii|deklarieren|ausführen|zählen|master|in|drop|ausführen)\\b)"; Muster sqlPattern = Muster.compile(reg, Muster.CASE_INSENSITIVE); wenn (sqlPattern.matcher(orderBy).find()) { zurückkehren ""; } Rückgabewert: orderBy; } /** * Legen Sie die Sortierung der Abfrage fest. Die Standardabfrage ist gültig, Beispiel: updatedate desc, name asc */ öffentliche void setOrderBy(String orderBy) { dies.orderBy = orderBy; } /** * Rufen Sie den Namen der aufgerufenen JS-Funktion ab, indem Sie auf die Seitenzahl klicken* Funktion ${page.funcName}(pageNo){location="${ctx}/list-${category.id}${urlSuffix}?pageNo="+i;} * @zurückkehren */ @JsonIgnorieren öffentliche Zeichenfolge getFuncName() { Funktionsname zurückgeben; } /** * Legen Sie den Namen der JS-Funktion fest, die aufgerufen wird, wenn Sie auf die Seitenzahl klicken. Der Standardwert ist „Seite“, der verwendet wird, wenn sich auf einer Seite mehrere Paging-Objekte befinden. * @param funcName standardmäßig auf Seite */ öffentliche void setFuncName(String funcName) { dies.funktionsName = funktionsName; } /** * Zusätzliche Parameter der Paging-Funktion abrufen * @return */ @JsonIgnorieren öffentliche Zeichenfolge getFuncParam() { gibt funcParam zurück; } /** * Zusätzliche Parameter für die Paging-Funktion festlegen * @return */ öffentliche void setFuncParam(String funcParam) { dies.funcParam = funcParam; } /** * Legen Sie die Eingabeaufforderungsnachricht fest, die nach „Insgesamt n Elemente“ angezeigt werden soll * @param message */ public void setMessage(String message) { diese.nachricht = Nachricht; } /** * Ist die Seitennummerierung gültig? * @return this.pageSize==-1 */ @JsonIgnorieren öffentliches Boolean istDeaktiviert() { gib diese.Seitengröße==-1 zurück; } /** * Ob die Gesamtzahl gezählt werden soll* @return this.count==-1 */ @JsonIgnorieren public boolean istNichtZähler() { gib dies zurück.Anzahl==-1; } /** * Holen Sie sich Hibernate FirstResult */ öffentliche int getFirstResult(){ int erstesResult = (getPageNo() - 1) * getPageSize(); wenn (erstesResult >= getCount() || erstesResult<0) { erstesErgebnis = 0; } gib das erste Ergebnis zurück; } /** * Holen Sie sich Hibernate MaxResults */ öffentliche int getMaxResults(){ returniere getPageSize(); } // /** // * Spring-Daten-JPA-Paging-Objekt abrufen // */ // öffentliches Pageable getSpringPage(){ // Liste<Bestellung> Bestellungen = neue ArrayList<Bestellung>(); // wenn (orderBy!=null){ // für (String-Reihenfolge: StringUtils.split(orderBy, ",")){ // String[] o = StringUtils.split(order, " "); // wenn (o.length==1){ // Aufträge.Hinzufügen(neuer Auftrag(Richtung.ASC, o[0])); // }sonst wenn (o.length==2){ // wenn ("DESC".equals(o[1].toUpperCase())){ // Aufträge.add(neuer Auftrag(Direction.DESC, o[0])); // }anders{ // Aufträge.Hinzufügen(neuer Auftrag(Richtung.ASC, o[0])); // } // } // } // } // gib eine neue Seitenanforderung zurück (diese.Seitennummer – 1, diese.Seitengröße, neue Sortierung (Bestellungen)); // } // // /** // * Legen Sie das Spring Data JPA-Paging-Objekt fest und konvertieren Sie es in das Paging-Objekt dieses Systems // */ // öffentliche void setSpringPage(org.springframework.data.domain.Page<T> page){ // diese.Seitennr. = Seite.getNumber(); // diese.Seitengröße = Seite.getSize(); // this.count = Seite.getTotalElements(); // diese.Liste = Seite.getContent(); // } } Das Obige ist der vollständige Inhalt dieses Artikels. Ich hoffe, er wird für jedermanns Studium hilfreich sein. Ich hoffe auch, dass jeder 123WORDPRESS.COM unterstützen wird. Das könnte Sie auch interessieren:
|
<<: Der Nginx-Reverseproxy leitet Anfragen von Port 80 an 8080 weiter.
>>: Tutorial zum Herunterladen und Installieren von MySQL 8.0.12 WinX64
Der Link-In-Stil besteht darin, alle Stile in ein...
Inhaltsverzeichnis 1. Referenz-Plugins im Uniapp ...
Vorwort In der Praxis kann es zu folgendem Proble...
1. Zeitarten werden unterteilt in: 1. Netzwerkzei...
Problembeschreibung Wie wir alle wissen, wird bei...
herunterladen http://nginx.org/en/download.html E...
Inhaltsverzeichnis 1. Übersicht 1.1 Was ist ein P...
Vorwort Bei der Projektfreigabe ist immer eine Ve...
Listen zum Organisieren von Daten Nachdem die Les...
HTML Code: Code kopieren Der Code lautet wie folgt...
Ich habe mich kürzlich auch mit der Leistungsopti...
Inhaltsverzeichnis Grundlegende Syntax für Multi-...
Inhaltsverzeichnis Was ist Express-Middleware? Vo...
Zuvor hatte ich WordPress selbst erstellt, aber d...
Vorwort Was ist Staat Wir alle sagen, dass React ...