Javascript funktioniert nur im Firefox nicht jedoch im IE 8 ?!

Dieses Thema Javascript funktioniert nur im Firefox nicht jedoch im IE 8 ?! im Forum "Webentwicklung, Hosting & Programmierung" wurde erstellt von vbscript_einsteiger, 29. Dez. 2009.

Thema: Javascript funktioniert nur im Firefox nicht jedoch im IE 8 ?! Hallo zusammen, Ich habe eine ganz normale html-seite auf der ich ein Javascript verwenden möchte. Habe das ganze...

  1. Hallo zusammen,

    Ich habe eine ganz normale html-seite auf der ich ein Javascript verwenden möchte.
    Habe das ganze mal so geschrieben wie ich es mir vorstelle und im Firefox funktioniert es auch tadellos.
    Im IE 8 allerdings nicht, da anscheinend eine Variable des Scripts nicht definiert ist?! So zumindest lautet die Ausgabe im IE 8.

    Hier mal mein Code:
    Code:
    <html>
    <head>
    <title>onclick-event</title>
    </head>
    <body>
    
    <form action= method= name=formulartest>
    <input type=text name=ausgabe>
    <select name=test size=10 onclick=WertUebertragen(document.formulartest.test.value);>
    <option>Eintrag Nummer 1</option>
    <option>Eintrag Nummer 2</option>
    <option>Eintrag Nummer 3</option>
    <option>Eintrag Nummer 4</option>
    <option>Eintrag Nummer 5</option>
    </select>
    </form>
    
    <script type=text/javascript>
    
    function WertUebertragen (Wert) {
    
    var Woerter = Wert.split( );
    
    document.forms.formulartest.ausgabe.value = Woerter[2];
    
    }
    
    </script>
    </body>
    </html>
    
    
    Ich wäre euch dankbar für jede Hilfe und jeden Hinweis, da mir Google leider keine Lösung gebracht hat.

    Danke und Gruß
    vbscript_einsteiger
     
  2. Code:
    <head>
    <title>onchange-event</title>
    </head>
    <body>
    
    <form action= method= name=formulartest>
    <input type=text name=ausgabe>
    <select name=test size=10 onchange=WertUebertragen( this );>
    <option value=1>Eintrag Nummer 1</option>
    <option value=2>Eintrag Nummer 2</option>
    <option value=3>Eintrag Nummer 3</option>
    <option value=4>Eintrag Nummer 4</option>
    <option value=5>Eintrag Nummer 5</option>
    </select>
    </form>
    
    <script type=text/javascript>
    
    function WertUebertragen ( obj ) {
    	document.forms.formulartest.ausgabe.value = obj.options[obj.selectedIndex].value;
    }
    
    </script>
    </body>
    </html>
    
     
  3. Hallo Conny,

    danke für die schnelle Antwort. Deine Lösung funktioniert super, solange es sich um die Zahlen Handelt die ausgegeben werden sollen. Wenn ich aber das erste oder zweite Wort ausgeben möchte kann ich diese Methode so nicht mehr anwenden oder??

    Mein Problem ist, dass ich die select-liste eigentlich dynamisch mit php erzeuge und einen bestimmten Wert (Vorname in Textfeld Vorname, Nachname in Textfeld Nachname und Nummer in Textfeld Nummer) bei klicken übertragen möchte.

    Der gepostete Code ist nur ein Prototyp. Normalerweise stehen in der select-liste nacheinander durch Leerzeichen getrennt ID Nachname Vorname Rufnummer. Ein Zeile in der Liste könnte also so aussehen.

    01 Musterman Max 098765 - 999
    02 Müller Hans 87654 - 888
    etc...

    Hier mal ein Ausschnitt des Codes im richtigen Formulars:

    Code:
    <?php 
    include (checkuser.php); 
    ?>
    <html>
    <head>
    <title> Telefonbuch </title>
    <link rel=stylesheet type=text/css href=layout/style.css>
    
    <script type=text/javascript>
    
    function WertUebertragen (Wert) {
    
    var Woerter = Wert.split( );
    
    document.Eintragsliste.Name.value = Woerter[1];
    document.Eintragsliste.Vorname.value = Woerter[2];
    document.Eintragsliste.Nummer.value = Woerter[3] +   + Woerter[4] +   + Woerter[5];
    
    }
    
    </script>
    
    
    </head>
    <body>
    
    <p> &nbsp </p>
    <h3> Telefonbuch - Eintrag ändern </h3>
    <h4>Liste aller Einträge</h4>
    
    <div align=center>				
    <form method=post action=VerarbeitungEintraegeAendern.php name=Eintragsliste>
    <select name=Eintrag size=10 onclick=WertUebertragen(this.form.Eintrag.value)>
    
    <?php 
    $mysqlhost=localhost; // MySQL-Host
    $mysqluser=xxx; // MySQL-User 
    $mysqlpwd=xxx; //Passwort
    $mysqldb=Telefonbuch; // Gewuenschte Datenbank
    
    $connection=mysql_connect($mysqlhost, $mysqluser, $mysqlpwd) or die (Verbindungsversuch fehlgeschlagen);
    mysql_select_db($mysqldb, $connection) or die(Konnte die Datenbank nicht waehlen.);
    $sql = SELECT * FROM Telefonbuch.adressen ORDER BY Name;
    $adressen_query = mysql_query($sql) or die(Anfrage nicht erfolgreich);
    
    
    
    while ($adr = mysql_fetch_array($adressen_query)){
    
    
    if (strlen($adr['ID']) > 1) {
    
    echo <option>.$adr['ID']. .$adr['Name']. .$adr['Vorname']. .$adr['Nummer'].</option>; }
    
    else {
    
    echo <option>0.$adr['ID']. .$adr['Name']. .$adr['Vorname']. .$adr['Nummer'].</option>;
    
    } }
    
    ?>
    
    </select>
    <p>Name: <input type=text name=Name>
      Vorname: <input type=text name=Vorname>
      Rufnummer: <input type=text name=Nummer></p>
    <p><input type=submit name=aendern value=Ändern></p>
    </form>
    <p><a href=logout.php>Ausloggen</a> | <a href=TelefonbuchVerwalten.php>Zurück zur Verwaltung</a></p>
    </div>
    
    Wie gesagt im Firefox funktioniert es so. Nur im IE 8 steht dann in den Textfeldern undefined.
    Es hat den anschein als würde mit der Variable/Array Woerter etwas nicht stimmen nur weiß ich leider nicht was bzw. wie ich es ändern kann.

    Danke für eure Hilfe

    Grüße
    vbscript_einsteiger
     
  4. Auch das ist machbar ;)

    => http://www.mredkj.com/tutorials/tutorial002.html
     
  5. So funktionierts. :)
    SUPER! Danke für die schnelle Hilfe :1

    Mich würde trotzdem interessieren warum der IE nicht mit Variable = Variable.split( ) klar kommt.

    DANKE DANKE DANKE du hast mir wirklich sehr geholfen!

    Grüße
    vbscript_einsteiger
     
  6. split kann der IE schon, man sieht es ja ;)

    Der Knasus-Faktus ist ganz einfach der, der IE weiß nicht was er splitten soll da er die gewählte Option nicht findet.

    So findet er sie => obj.options[obj.selectedIndex].text oder obj.options[obj.selectedIndex].value


    Edit:

    Ich pers. arbeite lieber mit onchange da das onclick-Event manchmal zu merkwürdigen/ungewollten Ergebnissen führt ;)

    z.B. in deinem Beispiel ist in der Select-Box nach den 5 Einträgen noch Leerraum übrig (ok, wird wohl später nicht sein), würdest du nun in diesen Leerraum klicken, hättest du schon das onClick-Event ausgelöst ;)

    Gefahr erkannt, Gefahr gebannt :2funny:
     
Die Seite wird geladen...

Javascript funktioniert nur im Firefox nicht jedoch im IE 8 ?! - Ähnliche Themen

Forum Datum
Firefox 23.0.1 Javascript verschwunden..... Web-Browser 30. Aug. 2013
W7 64 Bit - JavaScript aktivieren ....Wie geht das ?? Software: Empfehlungen, Gesuche & Problemlösungen 15. Aug. 2009
Javascript will Elemente nicht erkennen Windows XP Forum 2. Mai 2010
Firefox zeigt Website (JavaScript) fehlerhaft an Web-Browser 1. Feb. 2010
Testing JavaScript for Accessibility Windows XP Forum 15. Jan. 2010