Probleme mit jquery ajax

Drawlix

Mitglied
Habe folgendes Problem nämlich.
Ich versuche Werte zu übergeben wenn auf den Submit button gedrückt wird.
Nun werden nicht alle übertragen weil er bei der Übertragung schon auf die nächste Seite springt wie verhindere ich das er erst weitergeleitet wird wenn alles übertragen ist

Code:
$('#target').submit(function() {
	for (i=0; i < dateien.length;i++)
	{ 	
		
				
		for (c=0; c < datenBankDaten.length;c++)
		{   
			var inhalt=dateien[i]+":"+datenBankDaten[ c]+":";
			inhalt+=document.getElementById(dateien[i]+datenBankDaten[ c]).value;
			$.ajax({
				type: 		"post",
				url: 		"/ImportArrayVerwaltungAction.do",
				data: 		"addAttributeList="+inhalt ,
			});	
			alert("test3")
		}
		
	}
		
	return true;
	});
danke für die hilfe
 
Dazu sind zwei Sache nötig.
1. Verhindern, dass das Standardverhalten des Browser ausgeführt wird
2. Weiterleiten, nach dem alles fertig ist (ALLE Anfrage haben geantwortet).

Javascript:
//Wie viele Anfragen sind bereits fertig
var doneCounter = 0;

//Wie viele sind insgesamt zu machen
var todoCounter;

$('#target').submit(function(e) {
    //1. Verhindern des Standardverhalten
    e.preventDefault();

    todoCounter = dateien.length * datenBankDaten.length;

    for (i=0; i < dateien.length;i++)
    {   
        
                
        for (c=0; c < datenBankDaten.length;c++)
        {   
            var inhalt=dateien[i]+":"+datenBankDaten[ c]+":";
            inhalt+=document.getElementById(dateien[i]+datenBankDaten[ c]).value;
            $.ajax({
                type:       "post",
                url:        "/ImportArrayVerwaltungAction.do",
                data:       "addAttributeList="+inhalt ,
                //2. Prüfen, ob alles fertig ist. Jedes mal wenn eine Anfrage zurück kommt, erhöhen wir den Zähler
                complete: function() {
                    doneCounter++;
                    if(doneCounter >= todoCounter)
                        window.location = "Hier Zieladresse eingeben.";
                }
            }); 
            alert("test3")
        }
        
    }
        
    return true;
    });
 
Zurück