[JQuery] Frage

Goltergaul

Well-known member
ID: 17553
L
26 April 2006
480
7
Hi ich hab hier folgendes Script:
Code:
// AJAX LOADING MESSAGE
$("#world").ajaxStart(function(){
   	alert('load');
});

function menu_buildings_klick(id) {

		// Baumenü muss erst eingeladen werden
			$.ajax({ // AJAX Request auslösen
				type: "GET",
				url: 'ingame_bauhof.php',
				dataType: 'html',
				global: 'false',
				success: function(result)
				{
					$("#world").html(result);
				}
			});
	
}

wenn menu_buildings_klick aufgerufen wird, dann wird aber nicht das alert ausgegeben... warum?
 
also das $.ajax sieht verdammt komisch aus.

Also $ (Ersatz für document.getElementById) kenn ich von anderen Frameworks nur als Funktion aber dazu fehlen die Klammern...
 
die seite hab ich schon gelesen, verstehe sie allerdings nicht. muss ich mich erst "anmelden" dass ich dieses Event empfangen möchte?

muss ich also zusätzlich zu meinem Code noch
Code:
$.ajax({
   beforeSend: function(){
     // Handle the beforeSend event
   }
 });
hinzufügen? Ich checks grad garned ^^
 
Nene. Du hast für globale Events einen EventHandler registriert (ajaxStart), soweit passt das.

Nun setzt du einen Request ab und befiehlst explizit, die definierten, globalen EventHandler nicht zu benutzen:
Code:
[LEFT][FONT=Courier New][COLOR=#000000][COLOR=#007700]$.[/COLOR][COLOR=#0000bb]ajax[/COLOR][COLOR=#007700]({ [/COLOR][COLOR=#ff8000]// AJAX Request auslösen
                [/COLOR][COLOR=#0000bb]type[/COLOR][COLOR=#007700]: [/COLOR][COLOR=#dd0000]"GET"[/COLOR][COLOR=#007700],
                [/COLOR][COLOR=#0000bb]url[/COLOR][COLOR=#007700]: [/COLOR][COLOR=#dd0000]'ingame_bauhof.php'[/COLOR][COLOR=#007700],
                [/COLOR][COLOR=#0000bb]dataType[/COLOR][COLOR=#007700]: [/COLOR][COLOR=#dd0000]'html'[/COLOR][COLOR=#007700],
[B][COLOR=Magenta]            --> global: [/COLOR][/B][/COLOR][B][COLOR=Magenta]'false'[/COLOR][/B][COLOR=#007700][B][COLOR=Magenta], <--[/COLOR][/B]
                [/COLOR][COLOR=#0000bb]success[/COLOR][COLOR=#007700]: function([/COLOR][COLOR=#0000bb]result[/COLOR][COLOR=#007700])
                {
                    $([/COLOR][COLOR=#dd0000]"#world"[/COLOR][COLOR=#007700]).[/COLOR][COLOR=#0000bb]html[/COLOR][COLOR=#007700]([/COLOR][COLOR=#0000bb]result[/COLOR][COLOR=#007700]);
                }
            });  [/COLOR][/COLOR][/FONT][/LEFT]
Du darfst global nicht false setzen, dann wird auch dein alert() ausgeführt.

...so zumindest die Doku. Hab selber sowas noch nie benutzt :mrgreen:
 
ahhhh scheiße lol... ich wusste ned dass das das heißt. hab das aus der doku kopiert :doh: Danke für den Hinweis, hab vorhin bloß ned geschnallt was du mit global meinst ;)

edit: ohne die zeile mit dem global false gehts aber leider auch nicht :/