tutorials.de Buch-Aktion 05/2012
ERLEDIGT
JA
ANTWORTEN
2
ZUGRIFFE
699
EMPFEHLEN
  • An Twitter übertragen
  • An Facebook übertragen
AUF DIESES THEMA
ANTWORTEN
  1. #1
    Avatar von Biergamasda
    Biergamasda Biergamasda ist offline Mitglied Brokat
    Registriert seit
    Feb 2005
    Beiträge
    373
    Hallo Leute, ich habe ein kleines, bzw großes Problem

    Also, hatte es so:
    Code javascript:
    1
    
    div.setAttribute("onclick","makeRequest('./news/" + news[i] + "',SHOW_CONTENT)");

    Das geht ja im IE bekanntlich nicht, deshalb wollte ich das ganze jetz auf folgendes umbauen:
    Code javascript:
    1
    
    div.onclick = function() { makeRequest("./news/" + news[i],SHOW_CONTENT); };

    zum besseren verständnis nun die gesamte Funktion:

    Code javascript:
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    
    function printNews(httpRequest) {
        if (httpRequest.readyState == 4) {
            if (httpRequest.status == 200) {
                var news = new Array();
                news = httpRequest.responseText.split(';');
                for (i = 0; i < news.length - 1; i++) {
                    div = document.createElement("div");
                    div.className = "newsTeaser";
                    div.appendChild(document.createTextNode(news[i].split(".")[0]));
                    //div.onclick = function() { makeRequest("./news/" + news[i],SHOW_CONTENT); };
                    //div.setAttribute("onclick","makeRequest('./news/" + news[i] + "',SHOW_CONTENT)");
                    document.getElementById("news").appendChild(div);
                }
            } else {
                alert('There was a problem with the request.');
            }
        }    
    }

    Mein Problem ist jetzt, dass bei der 2. Variante, also der IE-tauglichen Variante die Variable i immer den wert 4 (also anzahl meiner news) erhält. Ziel ist jedoch, dass an die Request funktion der Inhalt des zutreffenden Elements aus news ist. - also beim ersten Schleifendurchlauf soll news[0] sein, beim 2. dann [1] ...

    Ich hoffe ihr versteht was ich meine

    Mir fällt keine Variante mehr ein das zu lösen, also bitte ich um eure Hilfe....
    Vielen Dank schon im Voraus

    mfg me
     

  2. #2
    Avatar von Sven Mintel
    Sven Mintel Sven Mintel ist offline Mitglied
    Registriert seit
    Aug 2003
    Beiträge
    18.238
    Blog-Einträge
    6
    Moin,

    ich weiss zwar nicht, was SHOW_CONTENT ist, aber rein vom Prinzip her sollte es so gehen:
    Code :
    1
    
    div.onclick = new Function('makeRequest("./news/' + news[i]+ '",SHOW_CONTENT)');
     

  3. #3
    Avatar von Biergamasda
    Biergamasda Biergamasda ist offline Mitglied Brokat
    Registriert seit
    Feb 2005
    Beiträge
    373
    SHOW_CONTENT war nur eine Konstante - dachte das geht aus der Großschreibung schon hervor, sry

    Danke, funktioniert einwandfrei, auf die idee mit new Function() bin ich gar nicht gekommen... *g*

    mfg
     

Ähnliche Themen

  1. Print-Layout im nachhinein von Laien mit Text und Bild bestücken
    Von khutter im Forum Desktop Publishing (DTP)
    Antworten: 9
    Letzter Beitrag: 13.04.10, 17:48
  2. EventHandler onClick innerhalb einer Funktion aufrufen
    Von messmar im Forum Javascript & Ajax
    Antworten: 1
    Letzter Beitrag: 28.07.07, 10:37
  3. EventHandler onclick deaktivieren
    Von messmar im Forum Javascript & Ajax
    Antworten: 2
    Letzter Beitrag: 05.08.06, 02:05
  4. Antworten: 20
    Letzter Beitrag: 05.10.05, 05:33
  5. ASP onclick Funktionsaufruf
    Von moha im Forum ASP
    Antworten: 2
    Letzter Beitrag: 28.11.03, 07:21