Umlaut im input-Feld
Pete
- javascript
0 Axel Richter0 Pete
0 wahsaga
Hallo,
ich habe folgenden Code:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
<html>
<head>
<title>blabla</title>
<meta http-equiv="content-type" content="text/html; charset=iso-8859-1">
</head>
<body>
<form action=''>
Bitte füllen Sie alle
<input type='text' length='10'>
<input type='hidden' value='Lücken'>
aus.
<input type="button" value="Eingaben prüfen" onclick="lueckentext(this.form)">
<input type="button" value="Lösung anzeigen" onclick="lueckentext_l(this.form)"></form><br>
</body></html>
Das Problem ist nun, dass der Browser (hier Firefox) die korrekte Lösung (jeweils das hidden-Feld) vermurkst, da er das ü als darstellt. Damit kann ich die Eingabe des Anwenders aber nicht mehr prüfen.
Ideen?
Ich habe drei ISOs ausprobiert:iso-8859-1, iso-8859-2 UTF-8 --- jeweils ohne Auswirkung.
Pete
Hallo,
ich habe folgenden Code:
<form action=''>
Bitte füllen Sie alle
<input type='text' length='10'>
<input type='hidden' value='Lücken'>
aus.
<input type="button" value="Eingaben prüfen" onclick="lueckentext(this.form)">
<input type="button" value="Lösung anzeigen" onclick="lueckentext_l(this.form)"></form><br>
</body></html>
Das Problem ist nun, dass der Browser (hier Firefox) die korrekte Lösung (jeweils das hidden-Feld) vermurkst, da er das ü als darstellt. Damit kann ich die Eingabe des Anwenders aber nicht mehr prüfen.
Wie wird geprüft? Was wird vermurkst? Deinem Formular fehlen in allen INPUT-Elementen die name-Attribute. Da aber bei Submit name-value-Paare abgesendet werden, wird Dein Formular _nichts_ absenden. Würde es etwas absenden, würde es, bei charset=ISO-8859-1 den Wert "Lücken" URL-codiert als L%FCcken, bei charset=UTF-8 URL-codiert als L%C3%BCcken absenden. Die serverseituge Logik muss das dann entsprechend decodieren.
Sollte es um die Javascript-Funktionen lueckentext(formobject) bzw. lueckentext_l(formobject) gehen, brauchten wir deren Quellcode, um helfen zu können.
viele Grüße
Axel
Zum einen: Ich habe nicht die ganze Seite gepostet, denn da fehlen ja nun ein paar Sachen(css und js-Dateien).
Es wird überhaupt nichts(!) serverseitig gemacht. Ich brauche auch kein name-attribut, da ich es so mache (kein Originalcode):
function lueckentext(formID) {
alert(formID.element[0].value);
//etc.
}
Ich möchte einfach die Eingabe des Anwenders mit dem Wert in hidden-Feld vergleichen:
function lueckentext(formID) {
if (formID.element[0].value == formID.element[1].value) {
alert('Die Eingabe war richtig');
}
}
Pete
Hallo,
Es wird überhaupt nichts(!) serverseitig gemacht. Ich brauche auch kein name-attribut, da ich es so mache (kein Originalcode):
function lueckentext(formID) {
alert(formID.element[0].value);
^Error. Das Array element[] existiert nicht.
//etc.
}Ich möchte einfach die Eingabe des Anwenders mit dem Wert in hidden-Feld vergleichen:
function lueckentext(formID) {
if (formID.element[0].value == formID.element[1].value) {
^Error. Das Array element[] existiert nicht.
^Error. Das Array element[] existiert nicht.
alert('Die Eingabe war richtig');
}
}
Folgendes funktiioniert bei mir im Opera7.23. Etwas anderes habe ich jetzt hier leider nicht.
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN"
"http://www.w3.org/TR/html4/strict.dtd">
<html>
<head>
<title>Vergleich</title>
<meta http-equiv="content-type" content="text/html; charset=UTF-8">
<script type="text/javascript">
<!--
function lueckentext(formID) {
alert(formID.elements[0].value);
alert(formID.elements[1].value);
if (formID.elements[0].value == formID.elements[1].value) {
alert('Die Eingabe war richtig.');
} else {
alert('Die Eingabe war falsch.');
}
}
//-->
</script>
</head>
<body>
<form action="#">
<p>
<input type="text" value="">
<input type="hidden" value="Lücken">
<input type="button" name="Vergl" value="Vergleiche" onclick="lueckentext(this.form)">
</p>
</form>
</body>
</html>
viele Grüße
Axel
hi,
Damit kann ich die Eingabe des Anwenders aber nicht mehr prüfen.
das kannst du sowieso nicht, da deine aufgerufenen javascript-funktionen gar nicht referenziert werden. (und du hast ja offenbar die komplette seite gepostet ...)
gruß,
wahsaga