![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 49 Pomógł: 0 Dołączył: 12.03.2009 Ostrzeżenie: (10%) ![]() ![]() |
Witam,
IE se nie radził z atrybutem onClick i nadałem onChange po tej zamianie pod IE ruszyło ![]() do onchange="outsideWindow(); jak najprościej wczytywać wartość z value? żeby wartość value="1" wczytać onchange="outsideWindow[tutaj wartość value czyli 1](); Kod htmlString += '<select name="nazwa" size="30" onchange="outsideWindow1();">';
htmlString += '<option value="1">1</option>'; htmlString += '<option value="2">2</option>'; htmlString += '</select>'; |
|
|
![]() |
![]()
Post
#2
|
|
![]() Grupa: Moderatorzy Postów: 8 989 Pomógł: 1550 Dołączył: 8.08.2008 Skąd: Słupsk/Gdańsk ![]() |
-------------------- |
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 49 Pomógł: 0 Dołączył: 12.03.2009 Ostrzeżenie: (10%) ![]() ![]() |
No tak tylko wtedy efekt będzie: outsideWindow1 a do tego na końcu chce jeszcze te nawiasy () czyli by było outsideWindow1()
|
|
|
![]()
Post
#4
|
|
![]() Grupa: Moderatorzy Postów: 8 989 Pomógł: 1550 Dołączył: 8.08.2008 Skąd: Słupsk/Gdańsk ![]() |
Ale tak się tego nie robi. Po co ci to?
Przekazujesz do funkcji argument i ona juz sobie wywoluje odpowiednie funkcjie jakie chcesz. -------------------- |
|
|
![]()
Post
#5
|
|
Grupa: Zarejestrowani Postów: 49 Pomógł: 0 Dołączył: 12.03.2009 Ostrzeżenie: (10%) ![]() ![]() |
Żeby mi się odwołało do:
Kod function outsideWindow1() { var win = new Window("win2", {className: "dialog", top:250, left:320, width:540, height:420, yIndex:20, opacity:1, title:"Nazwa sklepu", resizable: false, maximizable: false, minimizable: false}); win.getContent().innerHTML = test(); win.setDestroyOnClose(); win.show(); } w outsideWindow2 inna wartość w outsideWindow3 inna itd. jak się posługiwałem atrybutem onclick to nie było problemu: Kod <option VALUE="#" onclick="outsideWindow1()">Bartoszyce</option> Kod <option VALUE="#" onclick="outsideWindow2()">Bartoszyce</option> Ale IE tego nie mieliło FF, chrome itd se radziło no ale z IE wiele osób jeszcze korzysta i dlatego kombinuje z onchange by w odpowiednie miejsce mi value pobrało Ten post edytował lukko 11.08.2009, 14:16:05 |
|
|
![]() ![]()
Post
#6
|
|
Grupa: Zarejestrowani Postów: 352 Pomógł: 53 Dołączył: 10.08.2009 Ostrzeżenie: (0%) ![]() ![]() |
a nie mozesz wszystkiego zrzucić do jednej funkcji JS i switchem to przełączyć a na select dać onChange="outsideWindow(this.value)"?
|
|
|
![]()
Post
#7
|
|
Grupa: Zarejestrowani Postów: 49 Pomógł: 0 Dołączył: 12.03.2009 Ostrzeżenie: (10%) ![]() ![]() |
A nie wiem czy ja tak mądry by se tak dać rade z tym skryptem i dlatego szukam coś dla mnie prostszego w JavaScript z tym onchange
|
|
|
![]()
Post
#8
|
|
Grupa: Zarejestrowani Postów: 301 Pomógł: 25 Dołączył: 15.07.2007 Skąd: Olsztyn Ostrzeżenie: (0%) ![]() ![]() |
Ale twoje rozwiązanie jest trudniejsze. Zmień swoją funkcję na taką:
Kod function outsideWindow(nr) { switch (nr) { case 1: // tutaj w wypadku 1 //np: var win = new Window("win2", {className: "dialog", top:250, left:320, width:540, height:420, yIndex:20, opacity:1, title:"Nazwa sklepu", resizable: false, maximizable: false, minimizable: false}); win.getContent().innerHTML = test(); win.setDestroyOnClose(); win.show(); break; case 2: // tutaj w wypadku 2 break; case 3: // tutaj w wypadku 3 break; // itp.... } } i zastosuj rozwiązanie wookieb. Moim zdaniem to najlepsza droga. Prawdopodobnie do switcha nie musisz wrzucać całej funkcji tylko jej część bo reszta by się powtarzała ale nie wiem dokładnie co. Więc sam możesz do tego dojść chociaż jest to niekonieczne ![]() Ten post edytował bmL 11.08.2009, 14:47:33 -------------------- Tutaj miał być jakiś mądry tekst. Miał być... No ale jest głupi tekst.
|
|
|
![]() ![]()
Post
#9
|
|
Grupa: Zarejestrowani Postów: 352 Pomógł: 53 Dołączył: 10.08.2009 Ostrzeżenie: (0%) ![]() ![]() |
|
|
|
![]()
Post
#10
|
|
Grupa: Zarejestrowani Postów: 49 Pomógł: 0 Dołączył: 12.03.2009 Ostrzeżenie: (10%) ![]() ![]() |
Zastosowałem się do bmL:
Kod function outsideWindow(nr) { switch (nr) { case 1: var win = new Window("win2", {className: "dialog", top:250, left:320, width:540, height:420, yIndex:20, opacity:1, title:"Nazwa sklepu", resizable: false, maximizable: false, minimizable: false}); win.getContent().innerHTML = test(); win.setDestroyOnClose(); win.show(); break; case 2: var win = new Window("win2", {className: "dialog", top:250, left:320, width:540, height:420, yIndex:20, opacity:1, title:"Nazwa sklepu2", resizable: false, maximizable: false, minimizable: false}); win.getContent().innerHTML = test2(); win.setDestroyOnClose(); win.show(); break; } } I odwołanie się do tego: Kod htmlString += '<select name="nazwa" size="30" onchange="outsideWindow(this.value);">'; htmlString += '<option value="1">1</option>'; htmlString += '<option value="2">2</option>'; htmlString += '</select>'; No i lipa :/ a tak na krzywy ryj: Kod function outsideWindow(nr) { eval('outsideWindow'+nr+'()'); } To ja już nie wiem jak to w tym moim przypadku zastosować ![]() Bo ogólnie mam tak: Kod function outsideWindow1() { var win = new Window("win2", {className: "dialog", top:250, left:320, width:540, height:420, yIndex:20, opacity:1, title:"Nazwa sklepu", resizable: false, maximizable: false, minimizable: false}); win.getContent().innerHTML = test(); win.setDestroyOnClose(); win.show(); } function outsideWindow2() { var win = new Window("win2", {className: "dialog", top:250, left:320, width:540, height:420, yIndex:20, opacity:1, title:"Nazwa sklepu2", resizable: false, maximizable: false, minimizable: false}); win.getContent().innerHTML = test2(); win.setDestroyOnClose(); win.show(); } one się różnią innerHTML = do innych funkcji i coś tam jest bleble..... I odwołanie do: Kod htmlString += '<select name="nazwa" size="30" onchange="outsideWindow(this.value);">'; htmlString += '<option value="1">1</option>'; htmlString += '<option value="2">2</option>'; htmlString += '</select>'; Co niestety z onchange nie działa :/ Dla podkreslenia z onclick było ok: Kod htmlString += '<select name="nazwa" size="30" onchange="self.location.href = this.value">'; htmlString += ' <option VALUE="#" onclick="outsideWindow1()">1</option>'; htmlString += ' <option VALUE="#" onclick="outsideWindow2()">2</option>'; htmlString += '</select>'; No ale pod IE onclick nie trawi ![]() No i nie ogarniam tego choć się nie poddaje :-) Ten post edytował lukko 12.08.2009, 06:58:20 |
|
|
![]()
Post
#11
|
|
Grupa: Zarejestrowani Postów: 419 Pomógł: 42 Dołączył: 12.08.2008 Skąd: Wrocław Ostrzeżenie: (0%) ![]() ![]() |
Do czyjegoś rozwiązania dodaj może
Kod switch( parseInt( nr ) ) {
//reszta } |
|
|
![]()
Post
#12
|
|
Grupa: Zarejestrowani Postów: 49 Pomógł: 0 Dołączył: 12.03.2009 Ostrzeżenie: (10%) ![]() ![]() |
Kod function outsideWindow(nr) { switch( parseInt( nr ) ) { { case 1: var win = new Window("win2", {className: "dialog", top:250, left:320, width:540, height:420, yIndex:20, opacity:1, title:"Nazwa sklepu", resizable: false, maximizable: false, minimizable: false}); win.getContent().innerHTML = test(); win.setDestroyOnClose(); win.show(); break; case 2: var win = new Window("win2", {className: "dialog", top:250, left:320, width:540, height:420, yIndex:20, opacity:1, title:"Nazwa sklepu2", resizable: false, maximizable: false, minimizable: false}); win.getContent().innerHTML = test2(); win.setDestroyOnClose(); win.show(); break; } No i: Kod htmlString += '<select name="nazwa" size="30" onchange="outsideWindow(this.value);">'; htmlString += '<option value="1">1</option>'; htmlString += '<option value="2">2</option>'; htmlString += '</select>'; No niestety nie działa yy a ja już się tnę ![]() ![]() |
|
|
![]()
Post
#13
|
|
![]() Grupa: Moderatorzy Postów: 8 989 Pomógł: 1550 Dołączył: 8.08.2008 Skąd: Słupsk/Gdańsk ![]() |
No a zobacz co ci wywala konsola błędów. W firefoxie jest ładna wbudowana. Potem zoptymailzuj ten swój kod bo patrzeć się na niego nie chce.
-------------------- |
|
|
![]()
Post
#14
|
|
![]() Grupa: Moderatorzy Postów: 36 557 Pomógł: 6315 Dołączył: 27.12.2004 ![]() |
onchange pod IE sprawia problemy. To raz.
A dwa to ze nie this.value a this.options[this.selectedIndex].value -------------------- "Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista "Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer |
|
|
![]()
Post
#15
|
|
![]() Grupa: Moderatorzy Postów: 8 989 Pomógł: 1550 Dołączył: 8.08.2008 Skąd: Słupsk/Gdańsk ![]() |
A dwa to ze nie this.value a this.options[this.selectedIndex].value Nie ma różnicy. To i to będzie działać. Najpierw niech sprawdzi konsolę a to podstawa wszelkich działań. Potem niech sobie na poczatku funkcji outsideWindow wyswietli jakiegos alerta ktory mu pokaze jaka jest aktualna wartość. POTEM niech sprawdzi w ktorego case'a wchodzi switch (tez mozna alertami) -------------------- |
|
|
![]()
Post
#16
|
|
Grupa: Zarejestrowani Postów: 301 Pomógł: 25 Dołączył: 15.07.2007 Skąd: Olsztyn Ostrzeżenie: (0%) ![]() ![]() |
Golaod szedł w dobrym kierunku tylko że FX wywala błąd jak chcemy rzutować tą wartość do integera ale możesz:
Kod case 1: pozmieniać na Kod case '1':
-------------------- Tutaj miał być jakiś mądry tekst. Miał być... No ale jest głupi tekst.
|
|
|
![]() ![]() |
![]() |
Aktualny czas: 21.08.2025 - 08:20 |