[JavaScript] Funktion ist laut Firebug nicht vorhanden

Dieses Thema im Forum "Webentwicklung" wurde erstellt von SurTana, 20. April 2011 .

Status des Themas:
Es sind keine weiteren Antworten möglich.
  1. 20. April 2011
    Funktion ist laut Firebug nicht vorhanden

    Hi Leute,
    habe hier nochmal ein Problem. Ich habe eine Ajax funktion für eine Checkbox. Allerdings passiert nichts wenn ich die Checkbox anklicke. Daraufhin habe ich mal im Firebug nachgeschaut, und wenns nach dem geht, gibt es diese Funktion in meinem Script garnicht.
    Hat da jemand eine Erklärung für??

    Code:
    <div id="liefer_ad" style="visibility: hidden"></div>
    
    Abweichende Lieferadresse <input type="checkbox" id="abw_liefer" name="abw_liefer" value="liefern" onchange="liefer()">
    Code:
     function liefer(){
     
     try {
     req5 = window.XMLHttpRequest?new XMLHttpRequest(): 
     new ActiveXObject("Microsoft.XMLHTTP"); 
     } catch (e) {
     //Kein AJAX Support
     } 
     
     req5.onreadystatechange = function() {
     if ((req5.readyState == 4) && (req5.status == 200)) {
     document.getElementById('liefer_ad').innerHTML = req5.responseText; 
     } 
     };
     var liefern = document.getElementById('abw_liefer').value;
     if(liefern=='liefern'){
     req5.open('get', 'lieferadresse.cfm');
     req5.send(null);
     document.getElementById('liefer_ad').style.visibility = "visible";
     }
     else{
     
     document.getElementById('liefer_ad').style.visibility = "hidden";
     }
     
     }

    Gruß
    SurTana
     
  2. 21. April 2011
    AW: Funktion ist laut Firebug nicht vorhanden

    gelöst:
    problem war anscheinen das einfache anführungszeichen hier
    Code:
    if(liefern=='liefern')
    abgesehen davon war es unlogisch auf value zu prüfen, da der immer gleich bleibt, also prüfe ich jetzt auf checked und brauche auch keine anführungszeichen mehr sonder nur liefern==true

    Gruß
    SurTana
     
  3. 22. April 2011
    AW: Funktion ist laut Firebug nicht vorhanden

    zum verständiss: wenn du eine funktion im html-source referenzierst, muss diese vor dem element definiert sein.

    falsch:

    Code:
    elem.addEventListener("click", eine_funktion, false);
    
    function foo() {
     this.eine_funktion = function() { alert(1); };
    }
    
    foo.call(this);
    richtig:

    Code:
    function foo() {
     this.eine_funktion = function() { alert(1); };
    }
    
    foo.call(this);
    
    elem.addEventListener("click", eine_funktion, false);
    wobei foo.call(this); einfach einen anderen context darstellen soll.
     
  4. Video Script

    Videos zum Themenbereich

    * gefundene Videos auf YouTube, anhand der Überschrift.