![]() |
![]() ![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 28 Pomógł: 0 Dołączył: 30.03.2003 Skąd: Kraków Ostrzeżenie: (0%) ![]() ![]() |
witam, mam taki maly skrypcik, za pomoca ktorego moge dodawac i usuwac pola <select> ze stronki.
Kod function addInput() { arrInput.push( arrInput.length ); //arrValueLang.push( "" ); //arrValueLevel.push( "" ); display(); } function display() { document.getElementById( 'langs_select' ).innerHTML = ''; for( i = 0; i < arrInput.length; i++ ) { document.getElementById( 'langs_select' ).innerHTML += createInput( arrInput[i] ); document.getElementsByName( 'langs' + arrInput[i] ).options[arrValueLang[arrInput[i]]].selected = true; document.getElementsByName( 'level' + arrInput[i] ).options[arrValueLevel[arrInput[i]]].selected = true; alert( arrValueLang[arrInput[i]] ); } } function saveLangValue( id, si ) { arrValueLang[id] = si; } function saveLevelValue( id, si ) { arrValueLevel[id] = si; } function createInput( id ) { return '<select name="langs' + id + '" onChange="javascript:saveLangValue( '+id+', this.selectedIndex )">' + langOptions + '</select><select name="level' + id + '" onChange="javascript:saveLevelValue( '+id+', this.selectedIndex )"><option value="0">jezyk ojczysty</option><option value="1">rownorzedny z ojczystym</option><option value="2">zaawansowany</option><option value="3">sredni</option><option value="4">poczatkujacy</option></select>'; } function deleteInput() { if ( arrInput.length > 0 ) { arrInput.pop(); arrValueLang.pop(); arrValueLevel.pop(); } display(); } Wszystko dziala swietnie, oprocz odtwarzania wartosci. Powinno dzialac tak, ze jak dodaje nowe pole, albo usuwam stare, wartosci tych ktore zostaja, sie nie zmieniaja. Dlatego tez jest tam onChange i sie to ladnie zapisuje w tabeli. Ale jak potem w funkcji display() chce odpowiednim selectom nadac selectedIndex, tak zeby sie wybral od razy odpowiedni, to nic sie nie dzieje. Wartosci mam dobre w tablicy, juz sprawdzalem, to dziala, wiec chodzi tylko o to, zeby przy wyswietlaniu powiedziec mu ze selectedIndex danego pola ma byc taki a taki. Tutaj w kodzie jest to zrobione metdoa Kod options[index].selected = true; ale selectedIndex tez nie dziala. Mam andzieje ze ktos wie gdzie tkwi blad. Pozdrawiam -------------------- "Tylko dwie rzeczy sa nieskonczone: wszechswiat i glupota ludzka. Choc co do pierwszego nie mam pewnosci." [Albert Einstein, wybitny fizyk]
|
|
|
![]() ![]() |
![]() |
Wersja Lo-Fi | Aktualny czas: 26.06.2025 - 13:10 |