I teraz przy pomocy funkcji JavaScript tworzę w nim selecty:
Kod
function make_select(div,numer,aNames,aValues){
var select = document.createElement("select");
select.name = "przeladunek_z["+numer+"][]";
var br = document.createElement("br");
$(div).appendChild(br);
$(div).appendChild(select);
fill_select(select,aNames,aValues);
}
var select = document.createElement("select");
select.name = "przeladunek_z["+numer+"][]";
var br = document.createElement("br");
$(div).appendChild(br);
$(div).appendChild(select);
fill_select(select,aNames,aValues);
}
Gdzie div to nazwa div'a w którym tworzymy selecta, numer to numer w nazwie oraz tabele aNames oraz aValues - jakimi danymi mam je wypełnić. Na końcu jest funkcja wypełniająca nowoutworzony select (fill_select):
Kod
function fill_select(select,aNames,aValues){
select.options[0] = new Option();
select.options[0].selected = true;
for(var i = 0; i < aNames.length; i++) {
select.options[(i+1)] = new Option(aNames[i],aValues[i]);
}
}
select.options[0] = new Option();
select.options[0].selected = true;
for(var i = 0; i < aNames.length; i++) {
select.options[(i+1)] = new Option(aNames[i],aValues[i]);
}
}
Teraz zastanawiam się jak do takiego utworzonego przy pomocy JS selecta dodać jakąś funkcję na zadarzenie onChange? próbowalem (w funkcji make_select) dodac select.onChange="funkcja_on_change();"; ale nie działa :/
Nie wiem jak kasować optiony z selectów - nowego tworzy się przy pomocy new Option, ale kasuje? Chciałbym zrobić takie coś, że jak wybiorę jedną opcję w jednym selectie, to ta opcja kasuje sie u pozostałych (wszystkie selecty na początku zawierają te same dane) - już nie mam pojęcia jak to zrobić :/ Może jakaś podpowiedź?