Merlin: Prototype Framework Ajax: Legitim?

Hallo,

ich beschäftige mich gerade mit Ajax und bin in diesem Zuge auf das Prototype Framework gestoßen.

Mein Code sieht jetzt folgendermaßen aus:

  
function footer(fields, table, pk, type)  
{  
 /* Footer holen */  
 var elem=document.getElementById("footer");  
  
 /* Footer einblenden wenn nicht eingeblendet */  
 if(elem.style.display!="block")  
  elem.style.display="block";  
  
 /* Ajax Update des Inhaltes des Footers */  
 var myAjax = new Ajax.Updater('footer', 'ajax_editdel.php',  
 {  
  method: 'get',  
  parameters: {felder: fields, tabelle: table, pkey: pk, typ: type},  
 }  
 );  
  
}  

Diese Funktion wird mehrmals hintereinander aufgerufen (durchschnittlich ~5 mal). Deshalb frage ich mich, ob es legitim und förderlich ist, bei jedem Aufruf der Funktion ein neues Objekt "myAjax" zu erstellen.
Die GET-Parameter für die PHP-Datei ändern sich bei jedem Aufruf der JS-Funktion. Gibt es eine andere Möglichkeit?

Mit OOP in JS habe ich mich noch nicht beschäftigt, ich habe mich - aus Überzeugung - bisher gegen JavaScript gesträubt, aber mit Ajax wird das ganze doch erst sinnvoll.

MfG
Merlin, der Zauberer

  1. Hallo, Merlin (der Zauderer),

    Bevor Du Dich auf JavaScript einläßt, solltest Du ein paar Grundlagen darüber lernen - unter anderem ist es nicht valide, reservierte Schlüsselwörter als Variablennamen zu verwenden (bspw. "type").

    Ansonsten kannst Du gerne mit Prototype (oder einem anderen Framework, vielleicht wäre jQuery ja für Dich geeignet) weitermachen.

    Gruß, LX

    --
    RFC 1925, Satz 3: Mit ausreichendem Schub fliegen Schweine wunderbar. (...)
    1. unter anderem ist es nicht valide, reservierte Schlüsselwörter als Variablennamen zu verwenden (bspw. "type").

      »type« ist weder Schlüsselwort und noch reserviertes Wort.

      Mathias

      1. »type« ist weder Schlüsselwort und noch reserviertes Wort.

        Vielleicht bist du so darauf gekommen:
        Das Syntax-Highlighting  klassifiziert »type« als »known-attribute«, wodurch es andersfarbig dargestellt wird - dummerweise in einem sehr ähnlichen, nur wenig dunklerem Farbton im Vergleich zu »keyword«.

        Mathias

  2. Diese Funktion wird mehrmals hintereinander aufgerufen (durchschnittlich ~5 mal). Deshalb frage ich mich, ob es legitim und förderlich ist, bei jedem Aufruf der Funktion ein neues Objekt "myAjax" zu erstellen.

    Das ist zumindest korrekter Einsatz von Ajax.Updater - anders gehts mit Prototype meines Wissens nicht, wenn die Parameter jedes Mal variieren.

    Ob das nun performancemäßig die beste Lösung ist, ist wahrscheinlich zu bezweifeln, aber besser, als die ganze Sache von Hand mit XMLHttpRequest zu erledigen, ist diese Abstraktion durchaus. (Ob dieser isolierte Einsatz eine 100KB-Bibliothek legitimiert, ist eine andere Frage.)

    Mathias