Frage

Ich bin ein Neuling JSP, ich verstehe, dass es irgendeine Art von taglib-Dateien ist, wie ich verstehe, dass sie irgendeine Art von benutzerdefinierten sind definiert JSP-Tags. Hier ist ein Ausschnitt von JavaScript-Code, die ich nicht verstehe:

Polygon.viewPoint = function( index ){  
        window.${ec:safeId('polygon.view')}.Point( Page.ListofPoints.elements[index], index, 100 );
        Page.changeRowColor('row_'+index);
        Page.getProximityList( index );         
        Page.infoWindowLocation = Page.ListofPoints.elements[index];
    }

Die Javascript Frage ist nicht wirklich so wichtig, was ich bin interessiert, ist dieser Teil ${ec:safeId('poygon.view')} Ich verstehe, dass dieser Teil eine Art variabel ist, und das ist von irgendwo injiziert. Wahrscheinlich von hier <%@ taglib uri="/WEB-INF/tld/tagli-ec.tld" prefix="ec"%> oder vielleicht auch nicht .. kann jemand bitte erklären, was mit diesem $ nach Fenster ist .. was stellt es dar?

War es hilfreich?

Lösung

Zum Starten der ${} Syntax ist die EL (Expression language) Syntax. Wenn Sie mit Scriptlets vertraut sind, dann ist dies wie <%= %> Syntax oder im Fall von PHP der <?= ?> Syntax (die allerdings in zukünftigen Versionen als veraltet wird). Es im Grunde nur greift auf und druckt die Serverseite gesteuerten Variablen auf der Serverseite, bevor Sie die Antwort auf die Client-Seite zu senden. Wenn Sie eine ‚Quelltext anzeigen‘ in Ihrem Web-Browser tun, werden Sie sehen, dass es bereits analysiert wird / ausgewertet.

Dann gibt es die ${tagprefix:functionname} Syntax, die EL Funktionen darstellt. Bis zu dem Punkt, ermöglicht diese statische Java-Methoden zu definieren, das einige Argumente und gibt das Ergebnis nimmt die dann in EL zugegriffen werden kann. JavaRanch hat eine recht gute FAQ darüber. Die JSTL zum Beispiel hat auch eine sehr nützliche functions taglib .

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top