kostenloser Webspace werbefrei: lima-city


Bei onchange Variable setzen, nur wie abfragen?

lima-cityForumDie eigene HomepageHTML, CSS & Javascript

  1. Autor dieses Themas

    limabone

    Kostenloser Webspace von limabone

    limabone hat kostenlosen Webspace.

    Hallo,
    Ich wollte wissen, wie man abfragen kann, ob eine veränderung bei der Auswahl eines Selects-Feldes durchgeführt wurde?
    Probiert habe ich es mit
    <select id="blahh" onchange="javascript: var i = this.form.blahh.options[this.form.blahh.selectedIndex].value"><option value="1">EINS</option><option value="2">ZWEI</option></select>
    Nur habe ich mir den Code, der bei onchange durchgeführt wird kopiert *schäm* :slant:
    Wie könnte ich jetzt i mit einer Funktion die in einer externen datei ausgelagert ist abfragen? Muss ich dafür i in ein HTML element, welches versteckt ist speichern? Geht es auch nicht eleganter? :wave:

    Beitrag zuletzt geändert: 6.9.2010 16:39:40 von limabone
  2. Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!

    lima-city: Gratis werbefreier Webspace für deine eigene Homepage

  3. var alterSelectedValue = function(e){
      e = e||window.event;  // Das Event
      var obj = e.target||e.srcElement;  // Das Element das den Event auslöste
      var selectedValue = obj.options[obj.selectedIndex].value; // Die Option
      var time;
      isChanged = time = new Date; // eine temporäre Zeit
      var timeout = 300; // der Timeout, bis das alert kommt,
                         // je größer der ist, desto barriereärmer wird das Teil
      var alertLater = function(){  // die Funktion die später aufgerufen wird
        if(time != isChanged){  // wenn sich isChanged nicht geändert hat 
          alert(selectedValue); // dann alert ausgeben
        }
      }
      window.setTimeout(alterLater, timeout); // die funktion mit timeout aufrufen
    }
    var isChanged = null; // der tmp-speicher
    // alle select-felder
    var selectFields = document.getElementsByTagName('select');
    die Anzahl der Felder
    var i = selectFields.length;
    // allen Feldern das Event geben
    for(;i--;){
      selectFields[i].onchange = alterSelectedValue;
    }
    das Beispiel ist auch PIE mal Auge barrierearm...
  4. Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!

    lima-city: Gratis werbefreier Webspace für deine eigene Homepage

Dir gefällt dieses Thema?

Über lima-city

Login zum Webhosting ohne Werbung!