Startseite
Startseite

Startseite / Vorlagenentwicklung / Formulare / Eingabekomponenten / COMBOBOX

CMS_INPUT_COMBOBOX

Inhaltsverzeichnis
zum Beispiel
zu den Methoden: Option

CMS_INPUT_COMBOBOX

Die Combobox ist ein komplexes Auswahlelement. Comboboxen sind Dropdown-Boxen, die dem Redakteur erlauben, aus einer vorgegebenen Menge an Einträgen genau einen auszuwählen und erfüllen somit den gleichen Zweck wie Radiobuttons. Im Gegensatz zu Radiobuttons können Comboboxen so konfiguriert werden, dass der Redakteur auch eigene Inhalte in die Combobox einpflegen kann.

Comboboxen sind besonders geeignet, wenn eine Auswahl aus vielen Einträgen getroffen werden soll, da hier nur jeweils ein Eintrag – der ausgewählte – angezeigt wird. Die Angabe von mehr als vier Auswahlmöglichkeiten per Radiobutton kann dagegen schnell unübersichtlich werden.

Die Eingabekomponente kann innerhalb der Seiten- oder Absatzvorlagen für Abfragen verwendet werden, die abhängig von der Auswahl verschiedene Aktionen auslösen.

Für die Möglichkeit einer Mehrfachselektion sollte statt der Combobox die Auswahlkomponente Checkbox verwendet werden.

Zusätzlich können bei der Verwendung in der Datenquellen-Verwaltung mit dem allgemeinen Tag CMS_INCLUDE_OPTIONS Datenbankinhalte in der Eingabekomponente dargestellt werden.

Access-API Anwendungsbeispiel
Die Beispiel-Implementierung ComboboxEditorValueExample veranschaulicht einige einfache Anwendungsfälle für den Lesenden-, Schreibenden-, Erstellenden-Zugriff auf das Daten-Objekt (ComboboxEditorValue) und dessen inneren Daten-Container (OptionModel) der Eingabekomponente anhand der FirstSpirit Access-API.

name
Designator
Pflichtparameter
allowEmpty
YesNo
Optionaler Parameter
convertEntities
ConvertEntity
Optionaler Parameter
editable
YesNo
Optionaler Parameter
hFill
YesNo
Optionaler Parameter
hidden
YesNo
Optionaler Parameter
length
PositiveInteger
Optionaler Parameter
noBreak
YesNo
Optionaler Parameter
preset
Preset
Optionaler Parameter
singleLine
YesNo
Optionaler Parameter
sortOrder
SortOrder
Optionaler Parameter
useLanguages
YesNo
Optionaler Parameter
value
String
Pflichtparameter
lang
LanguageAbbreviation
Pflichtparameter
description
String
Optionaler Parameter
ignore
YesNo
Optionaler Parameter
label
String
Optionaler Parameter
lang
LanguageAbbreviation
Pflichtparameter
description
String
Optionaler Parameter
label
String
Optionaler Parameter

Parameter

Der nachfolgenden Tabelle können die Parameter der Eingabekomponente COMBOBOX entnommen werden.

ParameterPflichtparameterSeitTypStandardwert
name*Ja3.1DesignatorKeiner
allowEmptyNein3.0YesNoYES
convertEntitiesNein2.0ConvertEntityNONE
editableNein3.1YesNoNO
hFillNein2.0YesNoNO
hiddenNein4.0.44YesNoNO
lengthNein4.0PositiveInteger20
noBreakNein2.0YesNoNO
presetNein4.0PresetDEFAULT
singleLineNein4.0YesNoYES
sortOrderNein3.0SortOrderKEEP_ORDER
useLanguagesNein2.0YesNoYES

name

Das Attribut "name" ist der Variablenname einer Eingabekomponente, mit dem in den Vorlagen - mit Hilfe von $CMS_VALUE()$ - das Ergebnisobjekt der Eingabekomponente verwendet oder der Inhalt ausgegeben werden kann.

ParameterPflichtparameterSeitTypStandardwert
name*Ja3.1DesignatorKeiner

allowEmpty

Mit dem Parameter "allowEmpty" wird festgelegt, ob für eine Eingabekomponente ein Wert angegeben werden muss oder nicht.

Bei der Angabe von allowEmpty="YES" ist eine Eingabe nicht zwingend, bei allowEmpty="NO" jedoch schon.

Eingabekomponenten mit allowEmpty="NO" werden auch als Pflichteingabekomponenten bezeichnet.

Der Standardwert für allowEmpty ist YES.

ParameterPflichtparameterSeitTypStandardwert
allowEmptyNein3.0YesNoYES

convertEntities

Mit dem Attribut "convertEntities" werden Sonderzeichen, die in die Eingabekomponenten eingeben wurden, bei der Ausgabe in HTML-Zeichen umgewandelt.

Es gibt hier drei Ausprägungen:

  • convertEntities="NONE" (Standard)
  • convertEntities="STANDARD"
  • convertEntities="QUOTE"

Bei NONE werden keinerlei Konvertierungsregeln angewendet.

Wird STANDARD angegeben, so werden die Konvertierungsregeln angewendet, die im Bereich "convert" der ausgewählten Konvertierungsregel des Präsentationskanales stehen.

Die Angabe QUOTE schließt STANDARD explizit mit ein. Es wird jedoch zusätzlich der Bereich "quote" der Konvertierungsregel angewendet.

ParameterPflichtparameterSeitTypStandardwert
convertEntitiesNein2.0ConvertEntityNONE

editable

Mit dem Parameter editable kann festgelegt werden, ob neben der Auswahl der zur Verfügung stehenden Einträge auch die Eingabe eigener Werte in die Eingabekomponente möglich sein soll.

Bei der Angabe von YES (...editable="YES"...) ist zusätzlich zur Auswahl der über ENTRIES / ENTRY vordefinierten Einträge die Eingabe eines eigenen Wertes in das Auswahlfeld der Eingabekomponente möglich. Dieser Wert wird in der Eingabekomponente gespeichert, steht aber nur in der jeweiligen Eingabekomponente, nicht aber in anderen zur Verfügung. Wird statt einem manuell eingegebenen und gespeicherten Wert (z.B. Eingabe) ein anderer Wert in die Eingabekomponente eingegeben, ein vordefinierter Eintrag ausgewählt oder der Inhalt der Eingabekomponente über das X-Icon gelöscht, ist der Wert Eingabe nicht mehr verfügbar und muss bei Bedarf erneut von Hand eingegeben werden.

Anders als bei editable="NO" werden mit editable="YES" für die Visualisierung der zur Verfügung stehenden Einträge die über den Parameter value definierten Werte verwendet. Bei editable="NO" werden hingegen die über den Parameter label definierten Werte verwendet.

Wird der Parameter weggelassen (bzw. editable="NO"), so können nur die über ENTRIES / ENTRY vordefinierten Einträge ausgewählt werden, die manuelle Eingabe von Werten ist nicht möglich.

ParameterPflichtparameterSeitTypStandardwert
editableNein3.1YesNoNO

hFill

Die Anzeige einer Eingabekomponente erfolgt immer mit einer vordefinierten Breite.

Ist es aber gewünscht, dass die Eingabekomponente die volle zur Verfügung stehende Anzeigebreite nutzt, ist der Parameter hFill mit dem Wert YES anzugeben.

ParameterPflichtparameterSeitTypStandardwert
hFillNein2.0YesNoNO

hidden

Mit dem Parameter "hidden" kann eine Eingabekomponente für den Redakteur ausgeblendet werden.

Bei der Angabe von hidden="YES" wird die Eingabekomponente ausgeblendet, bei hidden="NO" nicht.

Der Standardwert für hidden ist NO, so dass Eingabekomponenten standardmäßig für den Redakteur sichtbar sind.

ParameterPflichtparameterSeitTypStandardwert
hiddenNein4.0.44YesNoNO

length

Mit dem Parameter length kann die Anzeigebreite der Eingabekomponente in Zeichen festgelegt werden.

Als Wert erwartet der Parameter eine Ganzzahl.

Wird der Parameter nicht angegeben so beträgt der Standardwert 20.

Wichtig Der Parameter hat keine Auswirkung, wenn der Parameter hFill verwendet wird.

ParameterPflichtparameterSeitTypStandardwert
lengthNein4.0PositiveInteger20

noBreak

Mit dem Parameter noBreak kann der automatische Zeilenumbruch nach einer Eingabekomponente unterdrückt werden.

Um den automatischen Zeilenumbruch zu unterdrücken, ist der Parameter noBreak mit dem Wert "YES" anzugeben (noBreak="YES").

ParameterPflichtparameterSeitTypStandardwert
noBreakNein2.0YesNoNO

preset

Mit dem Attribut preset kann festgelegt werden, wie Vorgabewerte in einer Eingabekomponente behandelt werden (vgl. dazu auch Kapitel Vorgabewerte). Wird preset="default" gesetzt, wird der im Formular definierte Rückgriffwert verwendet. Nachträgliche Änderungen im Formular an diesem Wert wirken sich auf alle Verwendungen in den vom Redakteur gepflegten Eingabekomponenten aus, solange bis ein manueller Wert in die Eingabekomponente gesetzt wird. Dies ist die Standardeinstellung. Wird preset="copy" gesetzt, wird der durch den Redakteur gewählte Wert "hart" in der Eingabekomponente gespeichert. Nachträgliche Änderungen am Vorgabewert im Formular wirken sich nicht aus.

ParameterPflichtparameterSeitTypStandardwert
presetNein4.0PresetDEFAULT

singleLine

Mit dem Parameter singleLine kann festgelegt werden, ob eine Eingabekomponente in einer Zeile (ohne Rahmen) dargestellt werden soll oder nicht.

Wird der Parameter nicht angegeben so wird die Eingabekomponente im in einer Zeile - ohne Rahmen - dargestellt.

Bei der Angabe von NO (...singleLine="NO"...) wird die Eingabekomponente zweizeilig mit Rahmen dargestellt.

Um ein einheitliches Layout der Eingabekomponenten zu gewährleisten ist es empfehlenswert für die Eingabekomponenten, die dieses Attribut unterstützen (z.B. COMBOBOX, DATE, NUMBER, TEXT und TOGGLE) singleLine="NO", anzugeben.

ParameterPflichtparameterSeitTypStandardwert
singleLineNein4.0YesNoYES

sortOrder

Mit dem Parameter sortOrder kann die Sortierreihenfolge der Einträge in der Eingabekomponente beeinflusst werden.

Für den Parameter können drei Schlüsselbegriffe verwendet werden:

  • sortOrder="KEEP_ORDER" (Standard)
  • sortOrder="ASCENDING"
  • sortOrder="DESCENDING"

Bei KEEP_ORDER wird die angegebene Reihenfolge der Einträge beibehalten.

Mit dem Wert ASCENDING werden die Einträge aufsteigend und bei DESCENDING absteigend alphabetisch sortiert.

ParameterPflichtparameterSeitTypStandardwert
sortOrderNein3.0SortOrderKEEP_ORDER

useLanguages

Mit dem Parameter useLanguages kann festgelegt werden, ob eine Eingabekomponente für verschiedene Sprachen unterschiedliche bzw. abweichende Werte speichern soll oder nicht (mehrsprachige Pflege).

Wird der Parameter nicht angegeben so werden standardmäßig abweichende Werte für die verschiedenen Sprachen gespeichert.

Bei der Angabe von NO (...useLanguages="NO") wird ein Wert für alle Sprachen gespeichert.

ParameterPflichtparameterSeitTypStandardwert
useLanguagesNein2.0YesNoYES

ENTRIESVerfügbar ab FirstSpirit-Version 4.0

Mit dem Tag ENTRIES kann die Menge der in der Eingabekomponente auswählbaren Einträge festgelegt werden.

Im Tag kann das Tag ENTRY angegeben werden.

Ein auswählbarer Eintrag entspricht einem ENTRY-Tag.

ENTRYVerfügbar ab FirstSpirit-Version 3.0

Mit einem ENTRY-Tag wird innerhalb des ENTRIES-Tags genau eine Eintrag definiert, der in der Eingabekomponente auswählbar sein soll. Das Tag besitzt den Pflichtparameter value, der dem in der Eingabekomponente zu speichernde Wert entspricht.

ParameterPflichtparameterSeitTypStandardwert
value*Ja2.0StringKeiner

value

Mit dem Parameter value im Tag ENTRY wird der in der Eingabekomponente zu speichernde Wert festgelegt.

Wichtig Die einzelnen Werte der value-Parameter innerhalb eines ENTRIES-Tag müssen sich voneinander unterscheiden.

ParameterPflichtparameterSeitTypStandardwert
value*Ja2.0StringKeiner

LANGINFOSVerfügbar ab FirstSpirit-Version 3.1

Über das Tag LANGINFOS können für jede Eingabekomponente sprachabhängige Angaben definiert werden, z. B. wie die Eingabekomponente in den unterschiedlichen Projektsprachen betitelt sein soll (Parameter label), welcher Tooltip angezeigt werden soll (Parameter description) usw. Aus Gründen der Übersichtlichkeit werden dabei Definitionen, die in mehreren Sprachen identisch sind, zusammengefasst. So wird z. B. aus

 <LANGINFOS> 
<LANGINFO lang="*" label="Date" format="dd.MM.yy"/>
<LANGINFO lang="DE" label="Date" format="dd.MM.yy"/>
<LANGINFO lang="EN" label="Date" format="MM/dd/yy"/>
</LANGINFOS>

beim Speichern

 <LANGINFOS> 
<LANGINFO lang="*" label="Date" format="dd.MM.yy"/>
<LANGINFO lang="EN" label="Date" format="MM/dd/yy"/>
</LANGINFOS>

Die Definition für den Rückfallwert (*) bleibt dabei immer erhalten, von Definitionen für Sprachen mit gleichen Werten bleibt immer die oberste erhalten.

Ab FirstSpirit-Version 4.2R4 kann der Rückfallwert weggelassen werden. Dann wird beim Speichern automatisch die zuerst definierte Sprache als Rückfallwert verwendet, z. B. wird aus

<LANGINFOS>
<LANGINFO lang="EN" label="Date"/>
<LANGINFO lang="DE" label="Datum"/>
</LANGINFOS>

beim Speichern

 <LANGINFOS> 
<LANGINFO lang="*" label="Date"/>
<LANGINFO lang="DE" label="Datum"/>
</LANGINFOS>

LANGINFOVerfügbar ab FirstSpirit-Version 3.1

Mit dem Tag LANGINFO werden Werte oder Attribute für eine Sprache oder aber für die Verwendung als Rückfallwerte angegeben.

Um Werte bzw. Attribute für eine Sprache anzugeben ist im Parameter lang die Abkürzung der Projektsprache anzugeben:

...
<LANGINFO lang="DE".../>
...

Rückfallwerte werden mit dem speziellen Sprachkürzel * ("für alle Sprachen") angegeben:

...
<LANGINFO lang="*".../>
...

Bei dem Parameter lang handelt es sich um einen Pflichtparameter.

ParameterPflichtparameterSeitTypStandardwert
lang*Ja3.1LanguageAbbreviationKeiner
descriptionNein3.1StringKeiner
ignoreNein4.0YesNoNO
labelNein3.1StringKeiner

lang

Mit dem Parameter lang wird das Sprachkürzel, das in den Servereigenschaften im Feld Abkürzung eingetragen ist (siehe Dokument ansehen FirstSpirit Handbuch für Administratoren, Kapitel "Sprach-Vorlagen"), angegeben, um festzulegen für welche Projektsprachen die Definitionen gelten sollen, z.B. DE für Deutsch, EN für Englisch, FR für Französisch usw. Folgende Zeichen können dabei beliebig oft angegeben werden: -, _, 0-9 und A-Z. Kleinbuchstaben werden nach dem Speichern der Vorlage automatisch in Großbuchstaben umgewandelt. Alternativ kann * für Rückfallwerte verwendet werden.

ParameterPflichtparameterSeitTypStandardwert
lang*Ja3.1LanguageAbbreviationKeiner

description

Mit dem Parameter description kann eine Beschreibung angegeben werden, die zur Anzeige eines Tooltipps (Mouse-Over) genutzt wird.

ParameterPflichtparameterSeitTypStandardwert
descriptionNein3.1StringKeiner

ignore

Mit dem Parameter ignore kann erreicht werden, das der Eintrag in der angegebenen Sprache nicht angezeigt bzw. ignoriert wird.

Wird der Parameter nicht angegeben, so wird ein Eintrag in der Sprache angezeigt.

Bei der Angabe von YES (...ignore="YES") wird der entsprechende Eintrag in der angegebenen Sprache ignoriert.

ParameterPflichtparameterSeitTypStandardwert
ignoreNein4.0YesNoNO

label

Mit dem Parameter label wird die Oberflächenbeschriftung für Eingabe- und Visualisierungkomponenten angegeben.

ParameterPflichtparameterSeitTypStandardwert
labelNein3.1StringKeiner

LANGINFOSVerfügbar ab FirstSpirit-Version 4.0

Über das Tag LANGINFOS können für jede Eingabekomponente sprachabhängige Angaben definiert werden, z. B. wie die Eingabekomponente in den unterschiedlichen Projektsprachen betitelt sein soll (Parameter label), welcher Tooltip angezeigt werden soll (Parameter description) usw. Aus Gründen der Übersichtlichkeit werden dabei Definitionen, die in mehreren Sprachen identisch sind, zusammengefasst. So wird z. B. aus

 <LANGINFOS> 
<LANGINFO lang="*" label="Date" format="dd.MM.yy"/>
<LANGINFO lang="DE" label="Date" format="dd.MM.yy"/>
<LANGINFO lang="EN" label="Date" format="MM/dd/yy"/>
</LANGINFOS>

beim Speichern

 <LANGINFOS> 
<LANGINFO lang="*" label="Date" format="dd.MM.yy"/>
<LANGINFO lang="EN" label="Date" format="MM/dd/yy"/>
</LANGINFOS>

Die Definition für den Rückfallwert (*) bleibt dabei immer erhalten, von Definitionen für Sprachen mit gleichen Werten bleibt immer die oberste erhalten.

Ab FirstSpirit-Version 4.2R4 kann der Rückfallwert weggelassen werden. Dann wird beim Speichern automatisch die zuerst definierte Sprache als Rückfallwert verwendet, z. B. wird aus

<LANGINFOS>
<LANGINFO lang="EN" label="Date"/>
<LANGINFO lang="DE" label="Datum"/>
</LANGINFOS>

beim Speichern

 <LANGINFOS> 
<LANGINFO lang="*" label="Date"/>
<LANGINFO lang="DE" label="Datum"/>
</LANGINFOS>

LANGINFOVerfügbar ab FirstSpirit-Version 3.1

Mit dem Tag LANGINFO werden Werte oder Attribute für eine Sprache oder aber für die Verwendung als Rückfallwerte angegeben.

Um Werte bzw. Attribute für eine Sprache anzugeben ist im Parameter lang die Abkürzung der Projektsprache anzugeben:

...
<LANGINFO lang="DE".../>
...

Rückfallwerte werden mit dem speziellen Sprachkürzel * ("für alle Sprachen") angegeben:

...
<LANGINFO lang="*".../>
...

Bei dem Parameter lang handelt es sich um einen Pflichtparameter.

ParameterPflichtparameterSeitTypStandardwert
lang*Ja3.1LanguageAbbreviationKeiner
descriptionNein3.1StringKeiner
labelNein3.1StringKeiner

lang

Mit dem Parameter lang wird das Sprachkürzel, das in den Servereigenschaften im Feld Abkürzung eingetragen ist (siehe Dokument ansehen FirstSpirit Handbuch für Administratoren, Kapitel "Sprach-Vorlagen"), angegeben, um festzulegen für welche Projektsprachen die Definitionen gelten sollen, z.B. DE für Deutsch, EN für Englisch, FR für Französisch usw. Folgende Zeichen können dabei beliebig oft angegeben werden: -, _, 0-9 und A-Z. Kleinbuchstaben werden nach dem Speichern der Vorlage automatisch in Großbuchstaben umgewandelt. Alternativ kann * für Rückfallwerte verwendet werden.

ParameterPflichtparameterSeitTypStandardwert
lang*Ja3.1LanguageAbbreviationKeiner

description

Mit dem Parameter description kann eine Beschreibung angegeben werden, die zur Anzeige eines Tooltipps (Mouse-Over) genutzt wird.

ParameterPflichtparameterSeitTypStandardwert
descriptionNein3.1StringKeiner

label

Mit dem Parameter label wird die Oberflächenbeschriftung für Eingabe- und Visualisierungkomponenten angegeben.

ParameterPflichtparameterSeitTypStandardwert
labelNein3.1StringKeiner
Legende

LanguageAbbreviation

Sprachkürzel, z.B. DE, EN, FR oder * für Rückfallwerte

PositiveInteger

Positive Ganzzahl

YesNo

Schalter, um ein Attribut anzuwenden oder nicht

NOVerfügbar ab FirstSpirit-Version 2.0

Attribut nicht anwenden

YESVerfügbar ab FirstSpirit-Version 2.0

Attribut anwenden

String

Eine beliebige Zeichenkette

SortOrder

Schalter, um die Sortierreihenfolge der Einträge festzulegen

KEEP_ORDERVerfügbar ab FirstSpirit-Version 3.0

Sortierreihenfolge der Einträge beibehalten

ASCENDINGVerfügbar ab FirstSpirit-Version 3.0

Einträge aufsteigend alphabetisch sortieren

DESCENDINGVerfügbar ab FirstSpirit-Version 3.0

Einträge absteigend alphabetisch sortieren

Preset

Define the general preset modes.

DefaultVerfügbar ab FirstSpirit-Version 4.0

Retrieve default from definition, if no value is set.

CopyVerfügbar ab FirstSpirit-Version 4.0

Copy default from definition and save automatically.

ConvertEntity

Schalter, um die Konvertierungsregel festzulegen

NONEVerfügbar ab FirstSpirit-Version 2.0

Keine Konvertierungsregeln anwenden

STANDARDVerfügbar ab FirstSpirit-Version 2.0

Konvertierungsregeln des "convert"-Bereichs anwenden

QUOTEVerfügbar ab FirstSpirit-Version 2.1

Konvertierungsregeln des "convert"- und "quote"-Bereichs anwenden

Designator

Eindeutiger Bezeichner variabler Länge; muss mit einem Buchstaben oder Unterstrich beginnen und darf nur die Zeichen "A-Z", "a-z", "0-9" und "_" enthalten, z.B. "fr_st_varName"

Beispiel

Ein Beispiel für die Eingabekomponente "CMS_INPUT_COMBOBOX":

<CMS_INPUT_COMBOBOX name="BEZEICHNER" useLanguages="YES">
<ENTRIES>
<ENTRY value="WERT">
<LANGINFOS>
<LANGINFO lang="*" label="TEXT"/>
<LANGINFO lang="DE" label="TEXT"/>
<LANGINFO lang="EN" label="TEXT"/>
</LANGINFOS>
</ENTRY>
</ENTRIES>
<LANGINFOS>
<LANGINFO lang="*" label="TEXT" description="TEXT"/>
<LANGINFO lang="DE" label="TEXT" description="TEXT"/>
<LANGINFO lang="EN" label="TEXT" description="TEXT"/>
</LANGINFOS>
</CMS_INPUT_COMBOBOX>

Ein Beispiel für die Befüllung einer Eingabekomponente "CMS_INPUT_COMBOBOX" mit Einträgen aus einer Fremdtabelle (Datenquellen-Verwaltung):

<CMS_INPUT_COMBOBOX name="BEZEICHNER" useLanguages="NO">
<CMS_INCLUDE_OPTIONS type="database">
<LABELS>
<LABEL lang="*">#item.SPALTE</LABEL>
<LABEL lang="DE">#item.SPALTE_DE</LABEL>
<LABEL lang="EN">#item.SPALTE_EN</LABEL>
</LABELS>
<TABLE>TABELLENVORLAGE</TABLE>
</CMS_INCLUDE_OPTIONS>
<LANGINFOS>
<LANGINFO lang="*" label="TEXT" description="TEXT"/>
<LANGINFO lang="DE" label="TEXT" description="TEXT"/>
<LANGINFO lang="EN" label="TEXT" description="TEXT"/>
</LANGINFOS>
</CMS_INPUT_COMBOBOX>

Verwendungsbeispiel in der Vorlagensyntax

Da eine COMBOBOX-Eingabekomponente ein Option-Objekt zurückliefert, kann der vom Redakteur ausgewählte Wert mit der Methode .getValue() ausgegeben werden.

Der Aufruf für eine COMBOBOX-Eingabekomponente mit dem Bezeichner st_combobox lautet:

$CMS_VALUE(st_combobox.value)$

© 2005 - 2014 e-Spirit AG | Alle Rechte vorbehalten. | Letzte Änderung: 2012-08-14