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

[FRAGE] value nicht im Quelltext?

formbox

New member
Hallo Gemeinde,

ich kann zwar ganz gut HTML und CSS, aber bei Javascript muss ich fast komplett passen... ich hoffe, ihr könnt mir helfen.

Über den eventhandler onchange stelle ich in einer textarea fest, ob es eine Änderung innerhalb des vorbelegten Inhaltes gegeben hat (wechselt der Nutzer das Feld, wird ausgelöst). Sofern es eine Änderung des Inhalts gab, lasse ich eine kurze Mitteilung ("Die Werte haben sich geändert") in das value-Attribut eines hiddenfield übertragen. Soweit, so gut... das war nicht schwierig :p Hintergrund: Das zugrunde liegende Formular verschickt über Lotus Notes eine E-Mail an einen Bearbeiter, der die Eingaben prüfen soll... dabei soll er darauf aufmerksam gemacht werden, ob in der besagten Textarea etwas geändert worden ist... wenn ja, dann muss er aktiv werden (fragt nicht warum... das ist so ist... ist eine Vorgabe und soll so sein).

Ansich funktioniert das auch super... bei einem sichtbaren input-feld (type="text" - einfach als Test)... hier wird mein value sehr schön angezeigt. Dummerweise: schaue ich in den HTML-Quellcode, ist mein value aber leer! Lasse ich mir stattdessen mal ein title-Attribut (zum Spaß) ausgeben, funktioniert das prima... der das title-Attribut ist gefüllt... aber nur im firefox... chrome, safari etc. zeigen im Quellcode nichts!

Fakt ist: Ich muss den Wert value übertragen, aber wie soll ich das machen, wenn das Attribut leer ist? ... was läuft hier schief? ... ich hoffe, man kann das nachvollziehen? ... anbei der Code (ich hoffe, der Auszug reicht)

Schon einmal besten Dank für eure Hilfe!

Code:
<textarea name="hiddenAufgaben" id="hiddenAufgaben" cols="45" rows="6" value="Vorbelegung">...</textarea>
<input type="hidden" id="hiddenAenderung" size="60" value="" />

<script type="text/javascript">
var changed = false; 
var textarea = document.getElementById('hiddenAufgaben');
textarea.onchange = function() {
	var aenderung = document.getElementById('hiddenAenderung');
	aenderung.value = "Der Text wurde geändert";
	changed = true;
}
</script>
 
Es gibt einen Unterschied zwischen (HTML-)Attributen und den sogenannten Properties. Attribute werden direkt im HTML-Quellcode angegeben. Beim Parsen der Seite gelangen diese Werte dann in das entsprechende Property. Mit aenderung.value änderst Du jetzt das Property namens "value", das HTML-Attribut ist davon nicht betroffen.

Aber kein Grund zur Sorge: Beim Abschicken eines Formulars werden die Property-Werte übermittelt ... die Attribute spielen dann keine Rolle mehr.
 
Die Browser zeigen in der Quelltextanzeige wirklich nur das an, was sie vom Server als HTML bekommen haben. Alle Änderungen mit JS werden da nicht wiedergegeben (auch nicht im FF - außer du hast statt dessen in die DOM-Ansicht geschaut).
 
Aha, OK... danke Euch! Ich teste das dann mal im Echtbetrieb! *thumbs up*

EDIT: Hat super geklappt! Man kann das mit den properties auch ja auch gut nachvollziehen, wenn man mit dem Firebug im Bereich DOM schaut... nochmals danke, wieder etwas gelernt!!!
 
Zuletzt bearbeitet:
Zurück
Oben