# Pflichtfeld in HTML-Formular?



## pglw (9. September 2005)

Hallo zusammen,

eigentlich habe ich ja zwei Fragen:

1) Kann ich in einem HTML-Formular nur mit HTML ein Pflichtfeld definieren und wenn ja wie?

2) Kann ich in einem HTML-Formular nur mit HTML definieren was in ein Feld eingegeben werden muß? (also z.B. ein Feld in das nur Zahlen oder nur Text darf) und wenn ja wie?

Eine detailliertere Antwort würde mich freuen, weil ich in HTML absoluter Anfänger bin

Thanks

PGLW


----------



## MeinerEiner_80 (9. September 2005)

hi,
 2 mal nein zu deinen Fragen. HTML bietet nicht so etwas. Du könntest dir aber ein PHP oder Javascript schreiben, das deine Eingaben prüft.. Da ich mich mit PHP kaum auskenne, hier mal die Andeutung einer Javascript Lösung :

   Das Formular selbst :

```
<form name=Formular method=post>
  <input type=text name=eingabe class=inputbox>
  <input type=button name=submit value=eingeben class=button onclick=checkInput()>
  </form>
```
  Hier Handelt es sich also um ein Textfeld mit Button, welcher, wenn er gedrückt wird, die Methode checkInput aufruft.

```
<script language="JavaScript">
  function checkInput()
  {
  if (document.Formular.eingabe.value.length == 0) gib Fehler aus
  else mach das gewünschte
  }
```
 In der If Abfrage wird nun geschaut, ob die Länge des Strings im Inputfeld gleich 0 ist, d.h. falls da nichts reingeschrieben wurde

  Was das Feld mit nur bestimmten eingabewerten angeht
  machst du das am besten so:

```
var erlaubteZeichen = "0123456789ABCD"
  var eingabe = document.Formular.eingabe.value
  for (var i=0; i<eingabe.length; i++)
  	  if (erlaubteZeichen.indexOf(eingabe.charAt(i))==-1) fehler.. unerlaubtes zeichen
```
  hier erstellst du dir eine maske mit erlaubten zeichen, und dann gehst du jedes
  einzelne zeichen der eingabe durch, ob auch in der makse vor kommt. wenn nicht,
  also wenn eingabe.charAt(i))==-1, dann ist ein unerlaubtes zeichen in der eingabe..


  so ich hoff mal das hat dir geholfen..
  *grüssle*
  MeinerEiner


----------



## pglw (10. September 2005)

Hallo!

Danke für Deine Antwort, hat mir sehr geholfen. Vielleicht kannst Du mir auch bei folgender Frage helfen:

Ich habe ein HTML-Formular mit einem Submit- Button, der die Angaben auf dem Formular an eine Email-Adresse sendet. Ist es mit HTML möglich ein Dropdownfeld anzulegen, in dem verschiedene Namen stehen. Wenn ein Name ausgewählt wird, sollen die Formularangaben zusätzlich auch an die Email-Adresse dieses Namens geschickt werden. Wie kann ich das realisieren ?

Danke schonmal

PGLW


----------



## MeinerEiner_80 (10. September 2005)

hi,
 ich würde eine dropdownliste erstellen, mit emailadresse als option values.

```
<select name="liste" size="1">
 <option value="adresse1@woauchimmer.de">bub</option>
 <option value="adresse2@woauchimmer.de">mädche</option>
 </select>
```
 
 wenn du jetzt in deiner versend methode auf die den selektierten wert zugreifen willst, müsste das mit 

```
this.document.liste.options[this.document.liste.selectedIndex].value
```
funktionieren.
und den value kannst du ja dann einfach an dein mailto:user1@user.de anhänge
oder halt als kopie versenden

*grüssle*
MeinerEiner


----------



## pglw (12. September 2005)

Danke für Deine Antwort. Nur noch eine kleine, prinzipielle Frage:

Der Code mit "This document.liste......" , ist das HTML oder JavaScript?


Kurze Antwort würde mich sehr freuen.

Danke un Ciao

PGLW


----------



## MeinerEiner_80 (12. September 2005)

pglw hat gesagt.:
			
		

> Der Code mit "This document.liste......" , ist das HTML oder JavaScript?
> PGLW


 javascript

 *grüssle*
 MeinerEiner


----------



## Gumbo (12. September 2005)

> Kann ich in einem HTML-Formular nur mit HTML ein Pflichtfeld definieren und wenn ja wie?


Nein, bisher ist soetwas leider nur mit einigen client- oder serverseitigen Skript-Aufwänden verbunden. Die WHAT-Arbeitsgruppe arbeitet jedoch derzeit an einem Entwurf mit dem Titel „Web Forms 2.0“, in der ein entsprechendes Attribut Abhilfe verschaffen könnte – zumindest für die clientseitige Variante, da Benutzereingaben vor/bei der Verarbeitung immer validiert werden sollten.


> Kann ich in einem HTML-Formular nur mit HTML definieren was in ein Feld eingegeben werden muß? (also z.B. ein Feld in das nur Zahlen oder nur Text darf) und wenn ja wie?


Auch dazu hat die WHAT-Arbeitsgruppe eine Antwort: das pattern-Attribut.

Wann dieser Entwurf jedoch zu einer Empfehlung wird und ob sich auch die Browserhersteller daran orientieren werden, ist eine andere Frage.


----------

