Hansii1234
Mitglied
Hi!
Hab das Problem, dass ich nach dem Aufruf der jQuery.Ajax ein Objekt,
dass zuvor deklariert und benannt wird, nach dem Senden nicht mehr definiert ist...
Ich lese mit dem Objekt moreView n-Beliebige Urls aus einer Seite.
Diese Urls werden wiederum in dem Objekt urls gespeichert, dass sich innerhalb
von moreView befindet.
Daraufhin werden per Ajax mit jQuery die einzelnen Urls aufgerufen.
Das Problem : Der erste Durchlauf funktioniert wunderbar,
jedoch ab dem zweiten Ajax-Request das Objekt urls nicht mehr definiert ist...
Warum verliert das Objekt seine Gültigkeit?
Wäre nett, wenn mir jemand helfen könnte...
Danke!
Hab das Problem, dass ich nach dem Aufruf der jQuery.Ajax ein Objekt,
dass zuvor deklariert und benannt wird, nach dem Senden nicht mehr definiert ist...
Ich lese mit dem Objekt moreView n-Beliebige Urls aus einer Seite.
Diese Urls werden wiederum in dem Objekt urls gespeichert, dass sich innerhalb
von moreView befindet.
Daraufhin werden per Ajax mit jQuery die einzelnen Urls aufgerufen.
Das Problem : Der erste Durchlauf funktioniert wunderbar,
jedoch ab dem zweiten Ajax-Request das Objekt urls nicht mehr definiert ist...
Warum verliert das Objekt seine Gültigkeit?
Wäre nett, wenn mir jemand helfen könnte...
Danke!

Code:
var moreView = {
//Hier wird das Objekt erzeug
urls : {},
start : function() {
if (jQuery(".more-views").attr("class") !== "more-views")
return false;
var end = jQuery(".more-views a").length;
for ( i = 0; i < end; i++) {
var urlOrig = jQuery(".more-views a").eq(i).attr("onclick");
var sendUrl = urlOrig.substring(urlOrig.indexOf("popWin('") + 8, urlOrig.length);
sendUrl = sendUrl.substring(0, sendUrl.indexOf("/', '"));
//Hier wird es definiert
moreView.urls[i] = sendUrl;
};
moreView.getUrl(0, end);
},
getUrl : function(current, end) {
if (current === end)
return false;
jQuery.ajax({
//UND HIER WIDER AUFGERUFEN
//DOCH AB DEM 2. DURCHLAUF IST
//DIE VARIABLE NICHT MEHR DEFINIERT...
url : moreView.urls[current],
context : document.body,
error : function() {
},
success : function(result) {
jQuery("body").append('<div style=\"display:none\" class=\"tempView\"></div>');
jQuery(".tempView").html(result);
var imgUrl = jQuery(".tempView img").attr("src");
jQuery(".more-views a").eq(current).attr("onclick", "startView.show(\"" + imgUrl + "\")");
current++;
jQuery(".tempView").remove();
moreView.getUrl(current, end);
}
});
}
};