[GastForen Programmierung/Entwicklung JavaScript Formularabfageprobleme unter dem IE

  • Suche
  • Hilfe
  • Lesezeichen
  • Benutzerliste
Themen
Beiträge
Moderatoren
Letzter Beitrag

Formularabfageprobleme unter dem IE

Anonym
Beiträge gesamt: 22827

28. Mai 2004, 11:56
Beitrag # 1 von 3
Bewertung:
(381 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
     Hallihallo,

ich habe ein Problem mit einem JavaScript. Das unten aufgelistete JavaScript läuft unter Opera und Mozilla tadellos. Allerdnigs bereitet es unter dem IE oder auch Konqueror Probleme, sprich es funktioniert einfach nicht. Ich habe schon einiges Versucht, kann mir irgendjemand einen Tipp geben? Ich glaube er kommt mit der Variblenabfrage window.document.bestellformular.bestellung5.value nicht zurecht, denn wenn man sich das ausgeben lässt ist es unter dem IE ein leerer String. Bei Mozilla hingegen halt die übergebene Zahl aus dem Formular. Ich hatte bereits in ein Paar anderen Foren geschaut, dort war unter anderem eine Version in Form von
document.bestellformular.bestellung5[document.bestellformular.bestellung5.selectedIndex].value
beschrieben wurden, aber auch das geht nicht, obwohl es als allbrowsertauglich beschrieben wurde.
Bitte helft mir, der Kram ist für ein e-commerce-projekt und deshalb recht wichtig für mich.

Vielen Dank im Vorraus

Killer

P.S.: Hier das Script

<html><head><title>Login</title><!-- Summe der Karten berechnen -->


<script type="text/javascript">
<!--
function sum()
{
var sum=0;
if (window.document.bestellformular.bestellung5.value != "-" && window.document.bestellformular.bestellung10.value != "-")sum=window.document.bestellformular.bestellung5.value * 5 + window.document.bestellformular.bestellung10.value * 10;
if (window.document.bestellformular.bestellung5.value == "-" && window.document.bestellformular.bestellung10.value != "-")sum=window.document.bestellformular.bestellung10.value * 10;
if (window.document.bestellformular.bestellung5.value != "-" && window.document.bestellformular.bestellung10.value == "-")sum=window.document.bestellformular.bestellung5.value * 5;
if (window.document.bestellformular.bestellung5.value == "-" && window.document.bestellformular.bestellung10.value == "-")sum=0;

if (sum>=50)sum=sum*0.95;

window.document.bestellformular.summe.value=sum+' euro';
}

function keinAccount()
{
alert("Sorry, but you have not an account yet!!!");
}

//-->
</script></head>

<body onload="sum()">

<center>

<form method="post" action="./login.php" name="bestellformular">
<table>
<tbody><tr><td><div align="right">5 €</div></td><td>
<select name="bestellung5" size="1" type="button" value="calc" onmouseup="javascript:sum()" onkeyup="javascript:sum()"><option selected="selected">-</option><option>1</option><option>2</option><option>3</option><option>4</option><option>5</option><option>6</option><option>7</option><option>8</option><option>9</option><option>10</option></select></td></tr>

<tr><td><div align="right">10 €</div></td><td>
<select name="bestellung10" size="1" type="button" value="calc" onmouseup="javascript:sum()" onkeyup="sum()"><option selected="selected">-</option><option>1</option><option>2</option><option>3</option><option>4</option><option>5</option><option>6</option><option>7</option><option>8</option><option>9</option><option>10</option></select></td></tr>
<tr><td>sum:</td>
<!-- Ausgabe der Summe nach Knopfdruck -->
<td><input type="text" name="summe" size="7" readonly="readonly"></td></tr>
</tbody>
</form>
</center>
</center>
</body>
</html>
X

Formularabfageprobleme unter dem IE

Markus Walker
Beiträge gesamt: 494

28. Mai 2004, 19:40
Beitrag # 2 von 3
Beitrag ID: #87902
Bewertung:
(381 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallihallo Anonymus

Da sind mindestens zwei Fehler eingebaut.

1. Das <select> Tag beinhaltet weder einen onmouseup noch einen onkeyup Event, siehe hierzu: http://selfhtml.teamone.de/...che/eventhandler.htm
oder offizieller hier: http://www.w3.org/...rms.html#edef-SELECT

2. Offensichtlich hält sich MSIE hier nicht genau an die HTML Spezifikation. Deswegen ist das value Property des jeweiligen Feldes leer, womit natürlich nicht weiter gerechnet werden kann. Nach HTML 4 ist gilt: «This attribute specifies the initial value of the control. If this attribute is not set, the initial value is set to the contents of the OPTION element.»
siehe http://www.w3.org/...rms.html#edef-OPTION


Die Lösung besteht darin, dass
a) mit dem onchange event gearbeitet wird (onfocus und onblur scheinen bei der gezeigten Anwendung nicht empfehlenswert)
und
b) dass jedem <option> Tag ein passendes Attribut value zugewiesen wird.
z.B. <option value=5>5</option>

HTH


als Antwort auf: [#87806]

Formularabfageprobleme unter dem IE

Anonym
Beiträge gesamt: 22827

29. Mai 2004, 12:45
Beitrag # 3 von 3
Beitrag ID: #87974
Bewertung:
(381 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Vielen Dank,

das funktioniert. Alternativ habe ich auch noch gesehen, dass man dass über "...options[1].selected" abrufen kann.

OK danke nochmal.
Gruß Der Killer


als Antwort auf: [#87806]

Aktuell

Veranstaltungskalender

Hier können Sie Ihre Anlässe eintragen, welche einen Zusammenhang mit den Angeboten von HilfDirSelbst.ch wie z.B. Adobe InDesign, Photoshop, Illustrator, PDF, Pitstop, Affinity, Marketing, SEO, Büro- und Rechtsthemen etc. haben. Die Einträge werden moderiert freigeschaltet. Dies wird werktags üblicherweise innert 24 Stunden erfolgen.

pdf-icon Hier eine kleine Anleitung hinsichtlich Bedeutung der auszufüllenden Formularfelder.

Veranstaltungen
05.02.2021 - 05.11.2021

Digicomp Academy AG, Limmatstrasse 50, 8005 Zürich
Freitag, 05. Feb. 2021, 13.00 Uhr - Freitag, 05. Nov. 2021, 17.00 Uhr

Lehrgang

Bilden Sie sich zum zertifizierten Publishing-Multimedia-Profi aus. Neben Fotografie und Video befassen Sie sich mit der Medienproduktion, digitalen Publikationen und dem Webdesign für Desktop- und mobile Endgeräte.

Preis: CHF 10'500.-
Dauer: 30 Tage (ca. 210 Lektionen) – Unterricht findet jeweils am Freitag von 13 - 19 Uhr und Samstag von 09 - 17 Uhr statt

Ja

Organisator: Digicomp Academy AG

Kontaktinformation: Kundenberater-Team, E-Mailkundenberatung AT digicomp DOT ch

digicomp.ch/d/9PM

Veranstaltungen
01.03.2021 - 05.03.2021

Persönlichkeitsentwicklung

Online
Montag, 01. März 2021, 00.17 Uhr - Freitag, 05. März 2021, 00.18 Uhr

Webinar

Personal Power Coaching - Um was geht es? ​ Potenzialentfaltung: Potenzial entdecken und entfalten Talente entdecken: Deine Talente und Fähigkeiten erkennen und loslegen Gewohnheiten: schlechte Gewohnheiten durch Positive ersetzen Selbstbewusstsein stärken: Dein Bewusstsein stärken Eigendynamik entwickeln: Mehr Erfolg durch Eigenverantwortung & Disziplin Ängste kontrollieren: Ängste als Antrieb nutzen Entscheidungen treffen: Mit mehr Mut an die Sache ran! Lebensenergie steigern: Deine Lebensenergie steigern und aufrechterhalten Ziele erreichen: Ziele setzen und übertreffen! Motivationssteigerung: Mehr Erfolg durch Selbstmotivation Selbstvertrauen: Selbstvertrauen auf- und ausbauen

Details:
https://www.snfa.ch/swiss-personal-power-birolisik

Ja

Organisator: Birol Isik

Kontaktinformation: Birol Isik, E-Mailinfo AT snfa DOT ch

https://www.snfa.ch/swiss-personal-power-birolisik

Neuste Foreneinträge


Optionsfelder abhängig machen von Kontrollkästchen

InDesign CC21 sperrt Taskleiste und Programme

Bilder verschieben sich nach dem Speichern und Kopiern der Datei

Verknüpfung mit Format aufheben

Kursivierung geht bei é und É verloren

Abbildungen auf 100 % bringen

Scriptphänomen alle 16 Steps

Alternative Acrobat Pro

Affinity Designer

Objekte in Texten lassen sich nicht mehr mit Maus auswählen, nurnoch als Text mit Cursor
medienjobs