![]() |
![]() |
![]()
Post
#1
|
|
![]() Grupa: Zarejestrowani Postów: 4 340 Pomógł: 542 Dołączył: 15.01.2006 Skąd: Olsztyn/Warszawa Ostrzeżenie: (0%) ![]() ![]() |
Witam chcialbym utworzyc nowy obiekt typu <select> w oparciu o juz istniejacy, niby dosyc proste ale jednak.
kod
problem wyglada nastepujaco. Kod Error: oList.options[i] has no properties Source File: file:///C:/AppServ/www/javascript/selectOptions.html Line: 13 ale jak odkomentuje alerta to elegancko wywali on wszystkie wartosci tej listy -------------------- I'm so fast that last night I turned off the light switch in my hotel room and was in bed before the room was dark - Muhammad Ali.
Peg jeżeli chcesz uprawiać sex to dzieci muszą wyjść, a jeżeli chcesz żeby był dobry ty też musisz wyjść - Al Bundy. QueryBuilder, Mootools.net, bbcradio1::MistaJam http://www.phpbench.com/ |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 49 Pomógł: 0 Dołączył: 21.03.2004 Skąd: Warszawa Ostrzeżenie: (0%) ![]() ![]() |
Chodzi o zwykłe skopiowanie elementu? Z użyciem jQuery może to wyglądać zupełnie tak:
Kod $('#abc').clone(true).appendTo('#oDiv');
|
|
|
![]()
Post
#3
|
|
![]() Grupa: Zarejestrowani Postów: 4 340 Pomógł: 542 Dołączył: 15.01.2006 Skąd: Olsztyn/Warszawa Ostrzeżenie: (0%) ![]() ![]() |
Chodzi o zwykłe skopiowanie elementu? Z użyciem jQuery może to wyglądać zupełnie tak: Kod $('#abc').clone(true).appendTo('#oDiv'); Cytat Z użyciem jQuery ale ja nie wspominalem ze chce to zrobic przy uzyciu jQuery
-------------------- I'm so fast that last night I turned off the light switch in my hotel room and was in bed before the room was dark - Muhammad Ali.
Peg jeżeli chcesz uprawiać sex to dzieci muszą wyjść, a jeżeli chcesz żeby był dobry ty też musisz wyjść - Al Bundy. QueryBuilder, Mootools.net, bbcradio1::MistaJam http://www.phpbench.com/ |
|
|
![]()
Post
#4
|
|
Grupa: Zarejestrowani Postów: 158 Pomógł: 43 Dołączył: 9.11.2007 Ostrzeżenie: (0%) ![]() ![]() |
Powinno działać:
Kod function showOptions(){
var select = document.createElement('select'); var oList = document.getElementById('abc'); var oDiv = document.getElementById('oDiv'); for(var i=0,n=oList.length; i<n; i++){ option = document.createElement('option'); option.setAttribute('value',oList.options[i].value); option.appendChild(document.createTextNode(oList.options[i].text)); select.appendChild(option); } oDiv.appendChild(select); } |
|
|
![]()
Post
#5
|
|
![]() Grupa: Zarejestrowani Postów: 4 340 Pomógł: 542 Dołączył: 15.01.2006 Skąd: Olsztyn/Warszawa Ostrzeżenie: (0%) ![]() ![]() |
Mam cos takiego
Kod for(var i=0;i<=oList2.length-1;i++){ var oOption2 = document.createElement('option'); oOption2.setAttribute('value',oList2Value[i]); oOption2 = document.createTextNode(oList2Text[i]); oSelect2.appendChild(oOption2); } bo wczesniej wrzucilem do tablicy z tym ze jest jeden problem wszystko wrzuca mi do jednej opcji i mam jedna do wyboru z 5 nazwami Ten post edytował skowron-line 22.11.2007, 17:01:33 -------------------- I'm so fast that last night I turned off the light switch in my hotel room and was in bed before the room was dark - Muhammad Ali.
Peg jeżeli chcesz uprawiać sex to dzieci muszą wyjść, a jeżeli chcesz żeby był dobry ty też musisz wyjść - Al Bundy. QueryBuilder, Mootools.net, bbcradio1::MistaJam http://www.phpbench.com/ |
|
|
![]()
Post
#6
|
|
Grupa: Zarejestrowani Postów: 158 Pomógł: 43 Dołączył: 9.11.2007 Ostrzeżenie: (0%) ![]() ![]() |
O ile dobrze zrozumiałem, to chcesz utworzyć 5 selektów, więc wystaczy zrobić to w pętli. Dodałem dodatkowo 'name', gdyż chyba później te dane z formularza mają być wykorzystane.
Kod function showOptions(){
var i,j,select,oList = document.getElementById('abc'),n=oList.length var oDiv = document.getElementById('oDiv'); for(j=1; j<=5; ++j) { select = document.createElement('select'); select.setAttribute('name', 'nazwa' + j); for(i=0; i<n; i++){ option = document.createElement('option'); option.setAttribute('value',oList.options[i].value); option.appendChild(document.createTextNode(oList.options[i].text)); select.appendChild(option); } oDiv.appendChild(select); } } |
|
|
![]()
Post
#7
|
|
![]() Grupa: Zarejestrowani Postów: 4 340 Pomógł: 542 Dołączył: 15.01.2006 Skąd: Olsztyn/Warszawa Ostrzeżenie: (0%) ![]() ![]() |
nie no zle zrozumiales chce 1 select z 5 opcjami
-------------------- I'm so fast that last night I turned off the light switch in my hotel room and was in bed before the room was dark - Muhammad Ali.
Peg jeżeli chcesz uprawiać sex to dzieci muszą wyjść, a jeżeli chcesz żeby był dobry ty też musisz wyjść - Al Bundy. QueryBuilder, Mootools.net, bbcradio1::MistaJam http://www.phpbench.com/ |
|
|
![]()
Post
#8
|
|
Grupa: Zarejestrowani Postów: 158 Pomógł: 43 Dołączył: 9.11.2007 Ostrzeżenie: (0%) ![]() ![]() |
Możesz wykorzystać funkcję, którą podałem wyżej lub krótszą wersję:
|
|
|
![]()
Post
#9
|
|
![]() Grupa: Zarejestrowani Postów: 4 340 Pomógł: 542 Dołączył: 15.01.2006 Skąd: Olsztyn/Warszawa Ostrzeżenie: (0%) ![]() ![]() |
@BaN no to teraz mi dajes skrypt.
ja mam cos takiego pobieram wartosci z juz istniejacej listy Kod var oList2 = document.getElementById('id_stawka_vat1'); var oList2Value = new Array(); var oList2Text = new Array(); for(var i=0; i<=oList2.length-1;i++){ oList2Value[i] = oList2.options[i].value; oList2Text[i] = oList2.options[i].text; //alert(oList1.options[i].value); } a potem wkladam do nowo utowrzonego Kod oSelect2 = document.createElement('select');
oSelect2.setAttribute('name','id_stawka_vat'+numRows); oSelect2.setAttribute('onchange','Netto('+numRows+')'); oSelect2.setAttribute('onchange','Netto('+numRows+')'); for(var i=0;i<=oList2.length-1;i++){ var oOption2 = document.createElement('option'); oOption2.setAttribute('value',oList2Value[i]); oOption2 = document.createTextNode(oList2Text[i]); oSelect2.appendChild(oOption2); } -------------------- I'm so fast that last night I turned off the light switch in my hotel room and was in bed before the room was dark - Muhammad Ali.
Peg jeżeli chcesz uprawiać sex to dzieci muszą wyjść, a jeżeli chcesz żeby był dobry ty też musisz wyjść - Al Bundy. QueryBuilder, Mootools.net, bbcradio1::MistaJam http://www.phpbench.com/ |
|
|
![]()
Post
#10
|
|
Grupa: Zarejestrowani Postów: 158 Pomógł: 43 Dołączył: 9.11.2007 Ostrzeżenie: (0%) ![]() ![]() |
Nie rozumiem w takim razie co chcesz zrobić. Kod który podałem w poście #4 tworzy selekta z opcjami na podstawie już istniejącego selekta, czyli tak jak chciałeś mieć. Jeżeli pierwszy ma trzy opcje, to drugi też będzie miał trzy. Jeżeli chcesz dopisać dodatkowe opcje do drugiego selekta, to wykorzystaj te same polecenia, ale z innymi parametrami.
|
|
|
![]()
Post
#11
|
|
![]() Grupa: Zarejestrowani Postów: 4 340 Pomógł: 542 Dołączył: 15.01.2006 Skąd: Olsztyn/Warszawa Ostrzeżenie: (0%) ![]() ![]() |
jak na moje oko oba te skrypty sa takie podobne, ten sam sens ale inaczej napisane wiec nie rozumiem dlaczego nie dziala
Ten post edytował skowron-line 23.11.2007, 14:30:17 -------------------- I'm so fast that last night I turned off the light switch in my hotel room and was in bed before the room was dark - Muhammad Ali.
Peg jeżeli chcesz uprawiać sex to dzieci muszą wyjść, a jeżeli chcesz żeby był dobry ty też musisz wyjść - Al Bundy. QueryBuilder, Mootools.net, bbcradio1::MistaJam http://www.phpbench.com/ |
|
|
![]()
Post
#12
|
|
![]() Grupa: Moderatorzy Postów: 36 557 Pomógł: 6315 Dołączył: 27.12.2004 ![]() |
Kod var oOption2 = document.createElement('option'); oOption2.setAttribute('value',oList2Value[i]); oOption2 = document.createTextNode(oList2Text[i]); oSelect2.appendChild(oOption2); I przyjrzyj sie linijce 3 i temu co tam robisz ps: Cytat ten sam sens ale inaczej napisane wiec nie rozumiem dlaczego nie dziala A to ciekawe stwierdzenie ![]() Od kiedy ten sam sens idzie w parze z tą samą poprawnością kodu? -------------------- "Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista "Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer |
|
|
![]()
Post
#13
|
|
![]() Grupa: Zarejestrowani Postów: 4 340 Pomógł: 542 Dołączył: 15.01.2006 Skąd: Olsztyn/Warszawa Ostrzeżenie: (0%) ![]() ![]() |
@BaN dzieki wielkie za kodzik, teraz dziala jak nalezy
@nospor oczywiscie konstruktywna krytyka -------------------- I'm so fast that last night I turned off the light switch in my hotel room and was in bed before the room was dark - Muhammad Ali.
Peg jeżeli chcesz uprawiać sex to dzieci muszą wyjść, a jeżeli chcesz żeby był dobry ty też musisz wyjść - Al Bundy. QueryBuilder, Mootools.net, bbcradio1::MistaJam http://www.phpbench.com/ |
|
|
![]() ![]() |
![]() |
Aktualny czas: 22.08.2025 - 08:06 |