php.de

Zurück   php.de > Webentwicklung > JavaScript, Ajax und mehr

JavaScript, Ajax und mehr dynamisches Scripten und Interaktion auf Clientebene

Antwort
 
LinkBack Themen-Optionen Thema bewerten
Alt 31.10.2010, 12:45  
Benutzer
 
Registriert seit: 11.12.2008
Beiträge: 42
reeky befindet sich auf einem aufstrebenden Ast
Standard Ajax Verständnisfrage

hallo leute,

ich beschäftige mich gerade etwas intensiver mit ajax und dessen implementierung. Und zwar habe ich mir eine bibliothek geschrieben und da hab stehe ich jetzt vor dem Problem, dass ich mehrere Anfragen drin habe.

Und zwar frage ich mich, wie diese Zeile gemeint ist:

Code:
resObjekt.onreadystatechange = handleResponse;
Ich interpretiere diese Zeile so:
Wenn das resObjekt seinen 'onready'-Status ändert, dann wird die Funktion handleResponse ausgeführt. Ich bin bloß jetzt stutzig, warum bei dem handleResponse nicht () da steht. Im Grunde genommen ist es ja eine Funktion und der Syntax lautet ja so.
Ist handleResponse gar keine Funktion (aber sie wird später ja noch erstellt mit function handleResponse) oder wird das aus Bequemlichkeit weggelassen?

Ich berufe mich hier auf die ganzen Beispiele, die im Internet zu finden sind. Dort wird meistens diese Schreibweise angewand.

mfg Reeky
reeky ist offline   Mit Zitat antworten
Sponsor Mitteilung
PHP Code Flüsterer

Registriert seit: 21.08.2005
Beiträge: 4682
PHP-Kenntnisse:
Fortgeschritten

Alt 31.10.2010, 12:53  
Moderator¹
 
Registriert seit: 28.03.2010
Beiträge: 7.470
PHP-Kenntnisse:
Fortgeschritten
ChrisB ist ein wunderbarer AnblickChrisB ist ein wunderbarer AnblickChrisB ist ein wunderbarer AnblickChrisB ist ein wunderbarer AnblickChrisB ist ein wunderbarer AnblickChrisB ist ein wunderbarer AnblickChrisB ist ein wunderbarer Anblick
Standard

Zitat:
Zitat von reeky Beitrag anzeigen
Ich bin bloß jetzt stutzig, warum bei dem handleResponse nicht () da steht.
Weil die Funktion in dieser Zeile nicht aufgerufen werden soll, sondern bloß ihre Referenz übergeben wird.

Zitat:
Ist handleResponse gar keine Funktion (aber sie wird später ja noch erstellt mit function handleResponse) oder wird das aus Bequemlichkeit weggelassen?
Weder noch.

Du solltest dich erst mal mit den Grundlagen von JavaScript beschäftigen, wenn dir solch grundlegende Dinge noch nicht klar sind.

Für den Anfang würde ich folgende Artikel empfehlen:
http://aktuell.de.selfhtml.org/artik.../organisation/
http://aktuell.de.selfhtml.org/artik...ript/oomodell/
__________________
RGB is totally confusing - I mean, at least #C0FFEE should be brown, right?
ChrisB ist offline   Mit Zitat antworten
Alt 03.11.2010, 09:49  
Erfahrener Benutzer
 
Registriert seit: 30.07.2008
Beiträge: 1.167
PHP-Kenntnisse:
Fortgeschritten
xm22 sorgt für eine eindrucksvolle Atmosphärexm22 sorgt für eine eindrucksvolle Atmosphärexm22 sorgt für eine eindrucksvolle Atmosphäre
Standard

Das hat die Bewandtnis, dass Du u. a. in JS Funktionen in Variablen speichern kannst. z. B.:
PHP-Code:
var = function() {
  
alert('Test');
}; 
Diese Funktion kannst Du jetzt mit
PHP-Code:
f(); 
aufrufen.

Ich schreibe das, weil ich damit selber lange nicht klar gekommen bin. Und schau Dir in diesem Zusammenhang auch die Scopes von JS an - Ganz wichtig!
xm22 ist offline   Mit Zitat antworten
Alt 03.11.2010, 11:45  
Neuer Benutzer
 
Benutzerbild von Skamander
 
Registriert seit: 21.07.2010
Beiträge: 14
PHP-Kenntnisse:
Anfänger
Skamander befindet sich auf einem aufstrebenden Ast
Standard

Zitat:
Zitat von xm22 Beitrag anzeigen
Das hat die Bewandtnis, dass Du u. a. in JS Funktionen in Variablen speichern kannst. z. B.:
PHP-Code:
var = function() {
  
alert('Test');
}; 
Diese Funktion kannst Du jetzt mit
PHP-Code:
f(); 
aufrufen.

Ich schreibe das, weil ich damit selber lange nicht klar gekommen bin. Und schau Dir in diesem Zusammenhang auch die Scopes von JS an - Ganz wichtig!
Dafür finde ich immer eine Filterfunktion sehr anschaulich:

PHP-Code:
// Die Funktion übernimmt als ersten Parameter eine Funktion welche an F gebunden wird, 
// und ein array mit dem gearbeitet wird.
function filter (F, array) {
    
// Nun wird ein leeres Array und ein counter erstellt, welcher auf 0 gesetzt wird.
    
var newArray = [],
    
0;
    
// Hiermit wird jedes Array-Element durchlaufen...
    
for (var i in array) {
        
// ... und hier wird die an F gebundene Funktion auf das jeweilige Array-Element angewendet.
        
if ( F(array[i]) ) {
            
// Sofern die Funktion true zurückgibt wird der Wert aus dem Array 
            // in ein neues Array geschrieben, und der Counter nach oben gezählt.
            
newArray[x] = array[i];
            
x++;
        }
    }
    
// Zum Schluss wird ein Array zurückgegeben welches alle Elemente enthält die durch den Filter
    // (die Funktion welche an F gebunden wurde) gekommen sind.
    // Ansonsten wird ein leeres Array zurückgegeben.
    
return newArray;

Die Anwendung sieht dann wie folgt aus:

PHP-Code:
var array = [12345678910];

// Hier wird eine anonyme Funktion übergeben, welche einen Parameter übernimmt.
// Innerhalb der zuvor geschriebenen Filterfunktion wird diese Funktion an F gebunden.
// Wir erinnern uns; F übernimmt auch einen Parameter. ;)
array = filter(function(X) {
    
// Wenn X Modulo 2 gleich 0 ist, dann sind wir zufrieden und
    // es soll true zurückgegeben werden.
    
if (== 0) { 
        return 
true
    } 
}, array );

// In dem Beispiel hättest Du nun folgendes Array -> [2,4,6,8,10] 
Der Vorteil davon ist, dass Du diesen Filter auf jedes Array anwenden kannst, das einzige was Du ändern musst ist der Filter (EDIT - also die anonyme Funktion die intern an F gebunden wird). Z.B. wenn Du ein Array mit Strings hast, und Du nur die Strings haben möchtest die mit P beginnen.

Geändert von Skamander (03.11.2010 um 12:21 Uhr).
Skamander ist offline   Mit Zitat antworten
Antwort


Themen-Optionen
Thema bewerten
Thema bewerten:

Forumregeln
Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are an
Gehe zu

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
Fileupload via AJAX GSJLink HTML, Usability und Barrierefreiheit 13 17.05.2012 21:41
[Erledigt] Web-Präsentation mit AJAX bbskater JavaScript, Ajax und mehr 3 24.09.2010 15:11
Webentwickler PHP, SQL, XML, Ajax in Münster gesucht S.Büscher_sup4u Beruflich 0 20.07.2010 15:39
geht das mit Ajax? sofortige umsetzung für den User bei externen Stylesheet strgg PHP Tipps 2010 12 08.07.2010 14:17
Ajax Anwendung, reines Ajax oder Ajax und Html jackie1983 JavaScript, Ajax und mehr 5 09.02.2010 16:50
AJAX - Variable von PhP erhalten auf möglichst simple Weise? SplitterWind JavaScript, Ajax und mehr 10 10.01.2010 04:34
Wie lade ich ein Javascript nach einer AJAX Abfrage neu? da.eXecutoR JavaScript, Ajax und mehr 3 21.09.2009 11:15
Ajax und include reloaden choice JavaScript, Ajax und mehr 6 10.07.2009 13:47
1111: AJAX meets PHP (indirectly) Nikolaus 2.0 Adventskalender 2008 5 15.12.2008 11:00
Ajax Formular problem mit eingabe themonk JavaScript, Ajax und mehr 2 01.11.2008 20:25
Probleme mit Sonderzeichen bei Ajax (prototype)... go1denboy JavaScript, Ajax und mehr 1 31.08.2008 18:44
AJAX: Session-Inhalt an PHP Curanai HTML, Usability und Barrierefreiheit 2 05.11.2007 15:45
AJAX open mit POST und GET DonTermi HTML, Usability und Barrierefreiheit 5 04.10.2007 18:22
Ajax bild.php aktualisieren M3g4Star HTML, Usability und Barrierefreiheit 3 09.03.2007 17:14

Besucher kamen über folgende Suchanfragen bei Google auf diese Seite
javascript handleresponse function, ajax handleresponse, handleresponse variable übergeben, javascript handleresponse selfhtml, ajax handleresponse parameter, handleresponse javascript, handleresponse, handle response variable übergeben, leeres array ajax, handleresponse parameter übergeben

Alle Zeitangaben in WEZ +2. Es ist jetzt 10:09 Uhr.




Powered by vBulletin® Version 3.7.2 (Deutsch)
Copyright ©2000 - 2012, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO 3.2.0
Aprilia-Forum, Aquaristik-Forum, Liebeskummer-Forum, Zierfisch-Forum, Geizkragen-Forum