Startseite ]   [ Netz-Schule ]  [ Linux-Schule ]  [ Map ]

  Know How
  Glossar

   
  Netz-Schule Know How  

WML - Formulare

sind auch hier *das* Mittel zur Kommunikation mit dem User. In WML kann man Formulare natürlich auch für Datenbankabfragen oder zur Erzeugung dynamisch erzeugter Seiten verwenden. Im Grunde genommen gibt es auch nicht viel mehr Features als bei den anderen beiden Markup's. Es gibt :

  • Auswahllisten (Select)
  • Eingabefelder (Input)

Nun gut es sind weniger Features. Dafür hat WML Ereignisse und nette Gimmicks die man in HTML gerne hätte,

Auswahllisten (Select)

<select multiple="false" name="nahrung" value="joghurt">
<option value="steak">Steak</option>
<option value="banane">Banane</option>
<option value="joghurt">Joghurt</option>
</select>

Einiges funktioniert natürlich unter HTML nicht. Multiselect geht obwohl es hier auf false steht. Im Handy sieht das dann anders aus :). Die Mehrfachauswahl in WML erfolgt mit dem Flag multiple="true". Name, bedeutet das gleiche wie in HTML. Value ist die Vorauswahl, in diesem Falle Joghurt. Auf Handys wird das dann schon markiert angezeigt. Ausnahmen sind :

  • iname - speichert die Indexposition der Auswahl - hier also 3
  • ivalue - zeigt die Indexposition als Vorauswahl an - hier auch 3

Damit braucht man sich bei Bedarf nicht mit den Namen rumzuärgern, sondern kann nach der Position gehen. Als Beispiel ( leider nur beschrieben, ich versuch mal bei Gelegenheit einen Browser zu finden der WML Seiten unter Linux anzeigt )

<select multiple="true" name="software" iname="indexprog" ivalue="2;3">
<option value="os2">OS/2</option>
<option value="linux">Linux</option>
<option value="beos">BeOS</option>
</select>

Durch die Angaben von ivalue="2;3" werden "Linux" und " BeOS" bereits markiert angezeigt. Wählt der User jetzt "OS/2" und "BeOS" aus, hat die Variable "software" den Wert " os2;beos" und die Variable "indexprog" hat den Wert "1;3".

Eingabefelder (Input)

Hiermit werden, wie in HTML auch, Eingabefelder in die Seiten einbaut. Anders als bei HTML, kann hier auch noch das Format der Daten festgelegt werden (format). Das können sein : Gruppen von Zahlen, nur Zahlen, Buchstaben von A-N und und und. Damit entfällt zum Beispiel das lästige checken von Eingabefeldern via Scriptsprache - wo nur Zahlen zulässig sind, kann man eben nur Zahlen eingeben. Feine Sache und ein weiterer Schritt weg von JavaScript. Definiert werden sie wie in HTML über <input type=..... Näheres in der Befehlsreferenz, da bis auf Format alle Befehle identisch mit HTML sind.

Ereignisse

Alle Ereignisse sind auf die Cards bezogen. Eigentlich gehöhren die Ereignisse nicht zu den Formularen. Aber da Sie nicht viel Platz wegnehmen und sie irgendwie auch zur Interaktion mit dem User dienen, schreibe ich sie hier doch rein. Die Syntax ist in der Befehlsreferenz unter cards

  • ontimer - bietet zum Beispiel die Möglichkeit nach X Sekunden ein beliebiges Ereignis auszulösen. Im Normalfall wird dies die Weiterleitung auf eine andere Seite sein. Kann man auch per Metaangabe machen - aber wie wir wissen funktioniert das eben nicht immer.
  • onenterforward - wird aufgerufen wenn der User die entsprechende card mit Hilfe eines Links oder Direkt aufgerufen wird.
  • onenterbackward - wird aufgerufen wenn die Card via History erneut geladen wird. Insofern macht die Fallunterscheidung also durchaus Sinn.

Soweit eine klitzekleine Einführung in die Grundlagen von WML. Ob das ganze einen Sinnmacht, hängt stark vom Angebot der Seite selbst ab. Dass allerdings muss jeder selber beurteilen.

« zurück