• Das Erstellen neuer Accounts wurde ausgesetzt. Bei berechtigtem Interesse bitte Kontaktaufnahme über die üblichen Wege. Beste Grüße der Admin

Formularfeldvorausfüllen aus JS-Objekt

Rioter

New member
Hey leute ich versuche mich gerade an JavaScript aber bin gerade an ein Punkt angekommen wo ich fragen muss ob das was ich gemacht habe richtig ist und zum anderen wie ich die dor Schleife gestalten muss.

Aufgabe:
Erzeugen Sie ein JavaScript-Objekt mit Eigenschaften, die den Namen der Eingabefelder tragen. Schreiben Sie eine Methode(Objektfunktion)[name der methode: initFormular], die mit Hilfe
einer for-Schleife alle Eingabefelder, beim Laden der Seite, aus dem Objekt füllt.

Code:
<!doctype html>
<html lang="de">
<head>
	<meta charset="UTF-8">
	<title>Objekt Übung</title>
	<style>
		label, input, button {
			display:block;
		}
	</style>
	<script>
		function Person(vorname,nachname,email) {
			this.vorname = vorname;
			this.nachname = nachname;
			this.email = email;
			
			
			this.initFormular = function() {
				var person = document.getElementsByTagName("form");
				console.dir(person);
			} 
		}
		var rene = new Person{"max","Mustermann","18@gmx.de"};	
		console.log(rene);
	</script>
</head>
<body>
	<form action="#" name="person">
		<label for="vorname">Vorname</label>
		<input type="text" id="vorname" name="vorname">
		
		<label for="nachname">Nachname</label>
		<input type="text" id="nachname" name="nachname">
	
		<label for="email">E-mail</label>
		<input type="text" id="email" name="email">
		<button type="button" id="btn1">Absenden</button>
	</form>
</body>
</html>
 
Ok ja habe mich vorhin mit jemanden mich Unterhalten und ihm meine Ideen gesagt und festgestellt, dass ich ein Konstruktor gebastelt habe und nicht ein JS-Objekt.
Mein erstes Script habe ich tatsächlich als JS-Objekt gehabt und das ganze verworfen, weil ich unsicher war...

Aber ich danke Dir, dass Thema HTMLFormElement muss ich mir tatsächlich nochmal anschauen mit den JS-Objekten.
 
Deine Variable person ist gar nicht so verkehrt. Sie ist leider noch eine HTMLCollection (sowas ähnliches wie ein Array) - du musst da also noch das erste Element extrahieren(person[0]) oder (besser) dem <form> eine ID gehen und dann über document.getElementById() arbeiten. Diese Node, die du dann bekommst, hat dann dann die Eigenschaft.elements, die alle Eingabeelemente in der <form> enthalten (auch wieder in einer arrayähnlichen Struktur). Durch diese Struktur kannst du dann durchiterieren und das Objekt aufbauen.
 
Zurück
Oben