InernetExplorer und onclick Problem

  • #1
A

AlexD

Bekanntes Mitglied
Themenersteller
Dabei seit
22.05.2001
Beiträge
115
Reaktionspunkte
0
Hallo zusammen,

hab ein Skript geschrieben, in dem man seine Trainingseinheiten eintragen kann.
Dabei kann man wählen ob man eine Standartstrecke gelaufen ist, oder evtl. auch einmalig eine individuelle Strecke (im Urlaub usw...)
Auch die Eingabe einer neuen Laufstrecke im DropDown-Menü sollte möglich sein.

Das Problem ist nun, dass alle Browser (FF3, Opera, Chrome, Safari) so wie gewollt funktionieren.
Wenn ich im DropDown-Menü auf individuelle Strecke klicke erscheint ein DIV mit den entsprechenden Formularfeldern... der IE7, IE8 machen hier nichts, sie reagieren nicht auf das onclick-Event.

Wo hab ich den Fehler gemacht?! Oder lieg ich ganz falsch mit dem Ansatz??

hier ein Link, wo man die Funktion bzw. das Formular sehen/testen kann:


Im Quelltext kann man auch das Verfahren mit onclick sehen, denke da brauch ich hier kein Quellcode posten. Falls gewünscht mach ich das natürlich!!

Hoffe Ihr könnt mir hier weiterhelfen!

Gruß
Alex
 
  • #2
Der IE ignoriert die on... Events innerhalb einer Select-Option ::)

Gib der DropDown-Box einen onchange() und frage dann in der Funktion ab welche Option gewählt wurde.

Könnte so aussehen
Code:
<script type=text/javascript>
function checkOption( el ) {
	var val = el.options[el.selectedIndex].value;
	
	switch(val) {
		case 1:
			/** Mach irgendwas */
			break;
		case 2:
			/** Mach irgendwas */
			break;
		case 3:
			/** Mach irgendwas */
			break;
		case -1:
		default:
			/** Mach nix */
	}
}
</script>

<select onchange=checkOption( this ) name=test id=test>
 <option value=-1>Bitte wählen</option>
 <option value=1>1</option>
 <option value=2>2</option>
 <option value=3>3</option>
</select>
 
  • #3
Hi Conny,

erstmal recht herzlichen Dank für die schnelle Hilfe!!
Hab schon die Suchmaschine meines Vertrauens vergebens befragt.... und hier bekommt man in null-komm-nix den richtigen Tipp.

tja, wer ist denn dann hier der BÖSE, ich oder der IE?! ;)

Das Problem ist, dass das SELECT-Menü dynamisch von PHP generiert wird. Heißt ich hab im Vorfeld keine Ahnung wie die Values aussehen werden und wie viele es sind. Es sind nur 2 sicher, einmal für eine neue Strecke 0 und eben die individual Strecke 44.

ich hab es nun so gelöst:

Code:
function checkOption( el ) {
	var val = el.options[el.selectedIndex].value;

 if(val != null){
   if(val == 44){
     document.getElementById('individual_strecke').style.display='block';
   } else {
     document.getElementById('individual_strecke').style.display='none';
   }

 }
 if(val == 0) {
   document.location.href='index.php?page=laufen&loc=mein_training&action=neue_strecke';
 }

}

wenn es eine noch bessere Lösung gibt, bin ich gerne bereit diese zu verwenden.
Aber so funktioniert es nun auch im IE7, denke das es dann auch im IE8 funktioniert.
Weiterhin getestet mit FF 3.0.10, Opera 9.64, Safari 3.2.2 und Google Chrome 2.0.178

Vielen Dank nochmal!! :1
 
Thema:

InernetExplorer und onclick Problem

ANGEBOTE & SPONSOREN

Statistik des Forums

Themen
113.840
Beiträge
707.963
Mitglieder
51.494
Neuestes Mitglied
Flensburg45
Oben