Drag und Drop Dynamisch zufügen und Position bestimmen

Nun muss ich noch rausfinden wie ich aus meiner saveFinalTeam:function(player) auf die Information ueber die Auswechslungen zugreifen kann, das wird vermutlich nochmal schwierig.

Du könntest das Objekt (this) um einen Member erweitern, in dem du die Auswechselungen(map in Funktion substitute() ) speicherst, so hast du jederzeit Zugriff auf alle Auswechselungen.
 
Vielen Dank fuer den Tip. Ich habe das jetzt so umgesetzt, habe jedoch Probleme das Ganze wieder rauszuziehen. Ich habe also nun folgendes Format:

Code:
({substitution:{
_out:{nr:"3", name:"Badstuber"}, 
_in:{nr:"6", name:"Schweini"}}})

Code:
  var map={lineup:[],subs:[]};

 $.each($(this.wrapper).find('.ingame .player'), function(key, node) {
     map.lineup.push({fixtureID: $('.fixtureID').attr('id'),
     id:$(node).find('.nr').text(),name:$(node).find('.name').text(), 
     goal:$(node).find('.goal').text()});
});

// Nun schiebe die Subs rein
 $(this.sub).each(function(key,node) {
     map.subs.push({name:$(node).find('_out').text()});
 });

Das ist offentsichtlich voellig verkehrt, aber egal was ich bisher ausprobiert habe, komme ich einfach nicht an die Werte. Hoffentlich stelle ich mich nicht wieder viel zu bloed an. Ich bin mir noch nicht mal sicher ob das ueber find ueberhaupt geht, aber dies war nun mein letzter Versuch es doch noch hinzubekommen, aber mehr faellt mir einfach nicht mehr ein.

Habt Ihr nochmal einen Tip?

Vielen, vielen Dank !
 
Code:
var map={lineup:[],subs:[]};

Du erstellst map als locale Variable in irgendeiner Funktion, du bräuchtest sie aber als Member des Objektes(in den Funktionen per thisverfügbar)
Das kannst du gleich von vornherein einbauen: (ich nenne es im folgenden mal protocol, damit deutlich ist, was was ist):

....
Code:
var _this={
              
              wrapper:'#'+ns,
                //erlaubte auswechselungen
              substitutions:5,
                //Aufstellungsprotokoll
              protocol:{lineup:[],subs:[]},
.....

Darauf kannst du jetzt per this.protocol zugreifen, es aulesen oder erweitern.
Einzige Ausnahme ist $.each()
Innerhalb von $.each() bezieht sich this auf den aktuellen Knoten(Element des Objektes, das du durchläufst). Dort verwende stattdessen _this.protocol

Dies ist so möglich, weil das ganze Objekt eingangs unter dem Namen _this als lokale Variable gespeichert wurde....
Code:
var _this={

Falls dich diese Technik näher interessiert: http://aktuell.de.selfhtml.org/artikel/javascript/organisation/#closures

Ich habe das mal in meine Demo eingebaut.
Sobald du 11 Spieler aufgestellt hast, erscheint dort oben ein Button, indem du dir die in protocol gespeicherten Sachen anschauen kannst.
 

Neue Beiträge

Zurück