ich merk's grad selber, dass ich über diesen weg es nicht so zu stande kriege.
deswegen ne kurze erklärung was ich machen will.
aus einer auswahlliste soll eine art stückliste erstellt werden. je nachdem was man auswählt und wieviel man es anklickt, erscheint dann eine übersicht mit den ausgewählten stücken und deren anzahl. z.b. so:
[ infile_zusatz_tmp / infile_zusatz_anzahl_tmp ]
D258_72090_008 / 3
D258_72090_020 / 5
D258_72090_040 / 1
D258_72090_120 / 6
dazu soll es einen button geben, wo ich dann separat einzelne stücke wieder löschen kann
--> [x] => button zum löschen
D258_72090_008 / 3 [x]
D258_72090_020 / 5 [x]
D258_72090_040 / 1 [x]
D258_72090_120 / 6 [x]
je nach dem was ich anklicke und wie oft ich es tue, soll sich die anzahl verringern bis hin zum löschen des eintrages in diesem array.
D258_72090_008 / 1 [x] => 2x angeklickt
--> D258_72090_020 / 5 [x] =5x angeklickt und wird aus dem array gelöscht
D258_72090_040 / 1 [x]
D258_72090_120 / 6 [x]
sollte man aber zwischendurch die anzahl wieder erhöhen,dann soll er es halt machen und die neue anzahl hinzufügen.
und hier der script-auszug:
function init_Zusatzmatten()
{
var infile_zusatz_tmp = new Array(); //--> temp-Array für die Zusatzmatten nach dem Auswählen
var infile_zusatz_anzahl_tmp = new Array(); //--> temp-Array für die Zusatzmatten-Anzahl nach dem Auswählen
var infile_zusatz = new Array(); //--> Gesamt - Array für die infile_Zusatz
var zaehler = 1;
var ZusatzmatteAuswählen = function()
{
var z = 0; //--> Zähler, wenn ungleich ist
var Zusatz_HTZ = document.Auswahl.Zusatz.options[document.Auswahl.Zusatz.selectedIndex].text;
var Zusatz_Variante = document.Auswahl.ZusatzVariante.options[document.Auswahl.ZusatzVariante.selectedIndex].text;
var x = Zusatz_HTZ + "_" + Zusatz_Variante;
document.getElementById("msgs").innerHTML = "";
if( infile_zusatz_tmp.length != 0 )
{
for( var i = 0; i < infile_zusatz_tmp.length; i++ )
{
if( x == infile_zusatz_tmp[i] )
{
infile_zusatz_anzahl_tmp[i]++;
} else { z++; }
}
if( z == infile_zusatz_tmp.length )
{
infile_zusatz_tmp.push( Zusatz_HTZ + "_" + Zusatz_Variante );
infile_zusatz_anzahl_tmp.push( zaehler );
}
} else {
infile_zusatz_tmp.push( Zusatz_HTZ + "_" + Zusatz_Variante );
infile_zusatz_anzahl_tmp.push( zaehler );
}
// ich denke, dass ab hier meine fragestellung hin muss
for( var i = 0; i < infile_zusatz_tmp.length; i++ )
{
document.getElementById("msgs").innerHTML += infile_zusatz_tmp[i] + " / " + infile_zusatz_anzahl_tmp[i] + " ";
x = document.createElement( "input" );
x.type ="button";
x.name = "LöscheninfileZusatz";
x.value = "x";
x.id = i;
document.getElementById( "msgs" ).appendChild(x);
document.getElementById( "msgs" ).innerHTML += "<br>";
document.getElementById( i ).onclick = new Function( "document.getElementById( 'msgs' ).innerHTML +=" + infile_zusatz_tmp[i] + ";" );
}
};
document.getElementById( "ZusatzmatteAuswahl" ).onclick = ZusatzmatteAuswählen;
};
ich hoffe ihr könnt mir nun folgen was ich möchte.
lg romero