Ausgangslage

Die Datapool-Konfiguration zeigt nicht in allen Konfigurationsmöglichkeiten einen Zähler für die gefundenen Resultate an.

Zudem besteht in bestimmten Fällen das Bedürfnis die Darstellung / die Texte individuell definieren zu können.

Lösungsansatz

Mit einem zusätzichen Script im Bereich "beginn" kann die nach Bedarf ergänzt werden. Der Script setzt einen Platzhalter (<p id='results'></p>) für das Zähl-Resultat und zählt die Elemente. Das Ergebniss wird in den Platzhalter geschrieben. Jedesmal, wenn eine Eingabe im Suchfeld / in den Suchfeldern erfolgt, wird die Zählung wiederholt.

Die Darstellung des Platzhalters kann individuell über CSS gemacht werden ( p#results{ ... } ). 

Script (Beispiel)

$jax(document).ready(function(){
    setTimeout(function(){
			
		$jax('div[id*="dataPool_content"]').before("<p id='results'></p>");
 
        $jax('input[id*="dataPool_filter_"]').on('keyup', function () {  
  			initCntResult();
	    });
          
		function initCntResult() {
			var rowsde = $jax(".jsgrid-table .row").length;
			var resultatDE = "<span class='langDE'>Es wurden <strong>"+ rowsde +"</strong> Elemente gefunden</span>";
			$jax('#results').html(resultatDE);
		}
		
		initCntResult();
         
    }, 250);
 
});

Dieses Beispiel zeigt eine alleinstehende Verwendung. Die Anzahl Zeilen werden in Zeile 11 mit $jax(".jsgrid-table .row").length ermittelt. Das muss je nach Ausgabe angepasst werden. 


Der oben gezeigte Script muss je nach verwendeten anderen Scripts (bspw. Markieren der Resutate oder manuelle Filter) angepasst werden.

Beispiel > E-Services Kanton Bern

Beispiel mit DE/FR bei den E-Services des Kantons Bern > https://www.be.ch/de/start/dienstleistungen/e-services.html

		function initCntResult() {
			var rowsde = $jax(".rowde").length;
			var rowsfr = $jax(".rowfr").length;
			var rowsen = $jax(".rowen").length;
			var resultatDE = "<span class='langDE'>Es wurden <strong>"+ rowsde +"</strong> E-Services gefunden</span>";
			var resultatFR = "<span class='langFR'>La recherche a identifié <strong>"+ rowsfr +"</strong> services numériques.</span>";
			var resultatEN = "<span class='langEN'>Es wurden <strong>"+ rowsen +"</strong> E-Services gefunden</span>";
			var resultatTXT = resultatDE+resultatFR+resultatEN;
			$jax('#results').html(resultatTXT);
		}
		
		initCntResult();

Hier wird explizit nach Sprache gezählt. Das Konzept sieht je Eintrag und Sprache eine Zeile vor. So können E-Services die es nicht in EN oder nicht in FR gibt, für sich gezählt werden. Die Texte sind je nach Sprache individuell (EN-Übersetzung fehlt im Beispiel noch).

In diesem Fall wird die Funktion im keyup des Resultat-Highlighting ausgelöst.