Formulardaten auswerten mit JavaScript auf dem IE
Carsten
- javascript
Hallo alle zusammen,
ich wieß, daß es weiter unten schon mal einen Eintrag gibt zu einem ähnlichen Thema, aber der Thread ist glaube ich tot, deshalb hier nochmal eine neue Anfrage..
<html>
<head><title>Test</title>
</head>
<body>
<form method="post" action="test_ang.phtml" name="testformular">
<input type="text" name="name" size="10" value="Name">
<input type="submit" name="Submit" value="Submit">
</form>
<script language="JavaScript">
alert ("1. " + document.testformular.name.value);
alert ("2. " + document.all.testformular.name.value);
</script>
</body>
</html>
Das Coding führt auf dem Mac mit dem IE45 zu den Ausgaben
1. Popup: "1. undefined", im 2. Popup: "2. undefined".
Auf Win und Linux und auch auf dem IE50 auf dem MAC bekommt man "1. Name" und "2. Name" ausgeben, so wie ich es eigentlich erwartet hätte. Habt Ihr vielleicht irgend eien Idee.
Danke schon mal
Carsten
Hi,
<input type="text" name="name" size="10" value="Name">
"name" ist ein denkbar ungünstiger Name für ein Objekt, genau wie "forms" für ein Formular oder "document" für einen Layer. Vielleicht solltest Du Dir da etwas anderes einfallen lassen.
alert ("1. " + document.testformular.name.value);
document.testformular["name"].value sollte aber gehen.
Cheatah
Danke Cheatah,
ich werde es mal probieren. Allerdings weißt das folgende Coding genau gleiches Verhalten auf, was mich besorgt stimmt:-))
<html>
<head><title>Test</title>
</head>
<body>
<form method="post" action="test_ang.phtml" name="testformular">
<input type="text" name="name" size="10" value="Name">
<input type="submit" name="Submit" value="Submit">
</form>
<script language="JavaScript">
function test(divName)
{
alert (document.all[divName].name.value);
}
test('testformular');
</script>
</body>
</html>
Hi,
ich werde es mal probieren. Allerdings weißt das folgende Coding genau gleiches Verhalten auf, was mich besorgt stimmt:-))
warum? Du benutzt wieder die Eigenschaft(!) "name", die in den meisten Objekten definiert sein müßte, um ein Objekt des selben Namens zu referenzieren. Klar, daß es damit Probleme gibt. Stell Dir mal vor, bei euch im Haus würde zwei Carsten Nelk wohnen, die miteinander nichts zu tun haben - einer vielleicht als Person und der andere als Firma. Wo soll die Post hinliefern?
Cheatah
Hi Cheatah,
danke für den Hinweis. Es geht wirklich ohne Probleme, allerdings funktioniert es nur, wenn man "name" durch was anderes ersetzt. Auch dein anderer Hinweis funktioniert auf dem Mac leider nicht.
Also danke nochmal
Carsten