ilch Forum » Allgemein » HTML, PHP, SQL,... » not defined Fehler bei js funktion

Geschlossen
  1. #1
    User Pic
    holz Hall Of Fame
    Registriert seit
    17.11.2005
    Beiträge
    4.606
    Beitragswertungen
    117 Beitragspunkte
    Hi leute,

    möchte die funktion sndReq() mit onMouseOver starten ... aber es kommt immer die meldung resObjekt not defined

    if(navigator.app.Name.search("Microsoft") > -1) {
    	resObjekt = new ActiveXObject("MSXML2.XMLHTTP");
    } else {
    	resObjekt = new XMLHttpRequest();
    }
    
    function sndReq() {
    	 resObjekt.open('get', 'info.txt', true);
    	 resObjekt.onreadystatechange = handleResponse;
    	 resObjekt.send(null);
    	 }
    	 
    function handleResponse() {
    	if(resObjekt.readyState == 4) {
    		document.getElementById("info").innerHTML = resObjekt.responseText;
    	}
    }
    
    function leere() {
    	document.getElementById("info").innerHTML = "";
    	}



    wo liegt mein fehler?

    grüße holz
    0 Mitglieder finden den Beitrag gut.
  2. #2
    User Pic
    Mikro Mitglied
    Registriert seit
    05.10.2011
    Beiträge
    237
    Beitragswertungen
    21 Beitragspunkte
    Du musst mindestens einmal dem Script sagen das resObjekt eine variable ist.

    also:
    var resObjekt = new Object;
    dabei ist das var wichtig.
    Wer Rechtschreibfehler findet darf sie behalten!
    0 Mitglieder finden den Beitrag gut.
  3. #3
    User Pic
    holz Hall Of Fame
    Registriert seit
    17.11.2005
    Beiträge
    4.606
    Beitragswertungen
    117 Beitragspunkte
    jetzt meldet es resObjekt.open ist nicht defined..
    0 Mitglieder finden den Beitrag gut.
  4. #4
    User Pic
    Tr3icio gelöschter User
    2 Sekunden Google:

    function loadXMLDoc()
    {
    var xmlhttp;
    if (window.XMLHttpRequest)
      {// code for IE7+, Firefox, Chrome, Opera, Safari
      xmlhttp=new XMLHttpRequest();
      }
    else
      {// code for IE6, IE5
      xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
      }
    xmlhttp.onreadystatechange=function()
      {
      if (xmlhttp.readyState==4 && xmlhttp.status==200)
        {
        document.getElementById("myDiv").innerHTML=xmlhttp.responseText;
        }
      }
    xmlhttp.open("GET","ajax_info.txt",true);
    xmlhttp.send();
    }


    Oder einfach jQuery nehmen, damit ist es viel einfacher.
    0 Mitglieder finden den Beitrag gut.
  5. #5
    User Pic
    holz Hall Of Fame
    Registriert seit
    17.11.2005
    Beiträge
    4.606
    Beitragswertungen
    117 Beitragspunkte
    ja die sache ist die ich möchte das ja kapiern und lies in einem buch und da ist der code so wie oben .... und auf der cd von dem buch läuft das ohne probleme nur auf meinem webserver läuft es nicht ...
    0 Mitglieder finden den Beitrag gut.
  6. #6
    User Pic
    Tr3icio gelöschter User
    JavaScript wird meist browserbasierent genutzt und hat in diesen Fällen 0 mit dem Server zu tun.

    Dein Code wird nur vom Browser ausgeführt.

    Außerdem sollten deine ersten Zeilen sowieso so aussehen:

    if(navigator.app.Name.search("Microsoft") > -1) {
        var resObjekt = new ActiveXObject("MSXML2.XMLHTTP");
    } else {
        var resObjekt = new XMLHttpRequest();
    }
    0 Mitglieder finden den Beitrag gut.
  7. #7
    User Pic
    holz Hall Of Fame
    Registriert seit
    17.11.2005
    Beiträge
    4.606
    Beitragswertungen
    117 Beitragspunkte
    das ändert nichts ... es meckert immer noch in de erste zeile der sndReq() resObjekt is not defined
    0 Mitglieder finden den Beitrag gut.
  8. #8
    User Pic
    Tr3icio gelöschter User
    Tja hab mal einfach in die Konsole geguckt ...
    Es gibt kein

    navigator.app.Name.search("Microsoft")


    es muss heißen

    navigator.appName.search("Microsoft")


    ( appName ist ein Wort )


    Zuletzt modifiziert von Tr3icio am 18.10.2011 - 13:50:00
    1 Mitglieder finden den Beitrag gut.
  9. #9
    User Pic
    holz Hall Of Fame
    Registriert seit
    17.11.2005
    Beiträge
    4.606
    Beitragswertungen
    117 Beitragspunkte
    oh ja das ist des problems lösung^^ ... danke dann ist da wohl ein fetter fehler in meinem buch zunge

    würdest du von ajax abstand nehmen und das mit jquerry machen?
    0 Mitglieder finden den Beitrag gut.
  10. #10
    User Pic
    Mikro Mitglied
    Registriert seit
    05.10.2011
    Beiträge
    237
    Beitragswertungen
    21 Beitragspunkte
    Mit jQuery geht das alles viel viel einfacher, da kannst du dir den ganze spaß mit der Browserweiche sparen.

    das in den head rein und los gehts, alles da was du brauchst:

    <script src="http://code.jquery.com/jquery-1.6.4.min.js" type="text/javascript"></script>
    
    <script type="text/javascript"> 
    
    function loadXMLDoc(){
    
       $.ajax({
    	type: "POST", 
    	url: "ajax_info.txt",
    	cache: false,
    	success: function(antwort){
    	//und in der var antwort ist dann der Inhalt			
    	}
       });
    }
    
    </script>


    Enjoy:)
    Wer Rechtschreibfehler findet darf sie behalten!
    0 Mitglieder finden den Beitrag gut.
  11. #11
    User Pic
    Tr3icio gelöschter User
    Vergiss nicht das man noch ganz einfach failure hinzufügen kann ^^ Außerdem kann man gleich Methoden wie jQuery.get oder jQuery.post nutzen, welche noch weniger Code erfordern ^^
    0 Mitglieder finden den Beitrag gut.
  12. #12
    User Pic
    holz Hall Of Fame
    Registriert seit
    17.11.2005
    Beiträge
    4.606
    Beitragswertungen
    117 Beitragspunkte
    hmm doof dass ich ein ajax buch gekauft hab^^ naja ich les es trotzdem und dann lies ich das jquery buch
    0 Mitglieder finden den Beitrag gut.
  13. #13
    User Pic
    Mikro Mitglied
    Registriert seit
    05.10.2011
    Beiträge
    237
    Beitragswertungen
    21 Beitragspunkte
    Und wenn du nur eine datei laden willst das kannst du so machen mit jQuery.


    <script src="http://code.jquery.com/jquery-1.6.4.min.js" type="text/javascript"></script>
    
    <script type="text/javascript">
    
    $(function(){
    
       $('#btn').click(function(){
    
       $('#Deine_Element_ID').load('deine_datei.php');
    
       });
    });
    </script>


    Und schon wird der Inhalt in #Deine_Element_ID(div oder sowas) bei click auf das #btn Element geladen.

    Also einfacher geht es nun wirklich nicht mehr, aber Grundlagen zu lernen ist nie schlecht deshalb ein Buch zum lernen ist immer gut zwinker


    Zuletzt modifiziert von Mikro am 18.10.2011 - 18:29:18
    Wer Rechtschreibfehler findet darf sie behalten!
    0 Mitglieder finden den Beitrag gut.
  14. #14
    User Pic
    Tr3icio gelöschter User
    Ich hasse Bücher :-P
    Ich hab mir einfach ( kein Witz ) die Doku von jQuery vorgenommen und dann komplett einmal durch gelesen ^^
    0 Mitglieder finden den Beitrag gut.
  15. #15
    User Pic
    holz Hall Of Fame
    Registriert seit
    17.11.2005
    Beiträge
    4.606
    Beitragswertungen
    117 Beitragspunkte
    gibt es für javascript eine api? wo alle standard funktionen stehen?
    und ähnliches auch für jquerry?
    0 Mitglieder finden den Beitrag gut.
  16. #16
    User Pic
    Tr3icio gelöschter User
    jQuery hat ne ganze Doku?
    Das kann man nicht übersehen.

    docs.jquery.com/Main_Page

    Und bei JavaScript allgemein reicht schon:

    de.selfhtml.org/javascript/
    0 Mitglieder finden den Beitrag gut.
  17. #17
    User Pic
    holz Hall Of Fame
    Registriert seit
    17.11.2005
    Beiträge
    4.606
    Beitragswertungen
    117 Beitragspunkte
    ja das für jquerry hab ich schon gefunden

    danke
    0 Mitglieder finden den Beitrag gut.
Geschlossen

Zurück zu HTML, PHP, SQL,...

Optionen: Bei einer Antwort zu diesem Thema eine eMail erhalten