[js] przy zmianie option pojawiajace sie input |
[js] przy zmianie option pojawiajace sie input |
3.12.2003, 20:09:49
Post
#1
|
|
Grupa: Przyjaciele php.pl Postów: 554 Pomógł: 0 Dołączył: 4.04.2002 Skąd: Tychy Ostrzeżenie: (0%) |
Chodzi mi cos takiego ze w select mam dwie wartosci "Watch action" i "Watch user", no i chce zeby przy zmianie wartosci na "Watch action" pojawialy mi sie 2 inputy (tekst) "action" i "module" a przy wyborze "Watch user" 1 pole "user"
Da sie wogole cos takiego zrobic?? -------------------- "Real children don't go hoppity-skip unless they are on drugs."
|
|
|
3.12.2003, 20:24:20
Post
#2
|
|
Grupa: Przyjaciele php.pl Postów: 1 717 Pomógł: 0 Dołączył: 12.06.2002 Skąd: Wolsztyn..... Studia: Zielona Góra Ostrzeżenie: (0%) |
Da sie, ale (zreszta napewno zdajesz sobie z tego sprawe ) prawdopodobnie nie zadziala na niczym innym niz IE, Mozilla, Opera.
Najprosciej chyba jakbys mial calego forma w tabeli, np. w pierwszym rzedzie tego selecta, drugi rzad to inputy action i modul, a 3 rzad to user. Teraz na poczatku wyswietlona jest jedna z opcji, wiec jeden row musi zniknac.. no to znika.. dajesz mu style="display: none;" Teraz musisz tylko dac funkcje monitorujaca zdarzenie onChange selecta, ktora bedzie zamieniala widocznosc (display: none/block) tych dwoch rzedow. -------------------- Brak czasu :/
|
|
|
3.12.2003, 20:35:55
Post
#3
|
|
Grupa: Przyjaciele php.pl Postów: 554 Pomógł: 0 Dołączył: 4.04.2002 Skąd: Tychy Ostrzeżenie: (0%) |
Dzieki FIDO.
Szczeze mowiac bylem leniwy i mialem nadzieje ze ktos funkcja sypnie, no ale coz pokombinuje nad tym . -------------------- "Real children don't go hoppity-skip unless they are on drugs."
|
|
|
3.12.2003, 21:01:21
Post
#4
|
|
Grupa: Przyjaciele php.pl Postów: 1 717 Pomógł: 0 Dołączył: 12.06.2002 Skąd: Wolsztyn..... Studia: Zielona Góra Ostrzeżenie: (0%) |
No co Ty... nawet gotowe zupki z paczki trzeba zalac woda
--- ok... hint [xml:1:d22274ba15]<script type="text/javascript"> function zmien(frm) { obj1 = frm.pole1.parentElement.parentElement; obj2 = frm.pole2.parentElement.parentElement; if (obj1.style.display == 'none') { obj1.style.display = 'block'; obj2.style.display = 'none'; } else { obj1.style.display = 'none'; obj2.style.display = 'block'; } } </script> <form > <table border="1" cellpadding="2" cellspacing="0" > <tr> <td> <select name="wybor" size="1" onchange="zmien(this.form);"> <option value="1">Cos tam</option> <option value="2">Cos tam2</option> </select> </td> </tr> <tr style="display: block;"> <td> <input type="text" name="pole1" value="jeden" /> </td> </tr> <tr style="display: none;"> <td> <input type="text" name="pole2" value="dwa" /> </td> </tr> </table> </form> [/xml:1:d22274ba15] -------------------- Brak czasu :/
|
|
|
3.12.2003, 22:03:52
Post
#5
|
|
Grupa: Zarejestrowani Postów: 208 Pomógł: 0 Dołączył: 19.04.2003 Ostrzeżenie: (0%) |
Kod <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> O to chodziło? 8O
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en"> <head> <title></title> <style type="text/css"> <!-- div#actionFields { display: inline; } //--> </style> <script type="text/javascript"> <!-- function changeAction( id ) { AF = document.getElementById( 'actionFields' ); switch ( parseInt( id ) ) { case 1: AF.innerHTML = newInput( 'text', 'action', '' ); AF.innerHTML += newInput( 'text', 'module', '' ); break; case 2: AF.innerHTML = newInput( 'text', 'user', '' ); break; default: AF.innerHTML = ''; break; } } function newInput( type, name, value, style ) { return '<input type="' + type + '" name="' + name + '" value="' + value + '" style="' + style + '" />'; } //--> </script> </head> <body> <form name="watch" action=""> <select name="action" id="action" size="1" onchange="changeAction( this.value );"> <option>Choose</option> <option> </option> <option value="1">Watch action</option> <option value="2">Watch user</option> </select> <div id="actionFields"></div> </form> </body> </html> EDIT: FiDO |
|
|
3.12.2003, 22:51:58
Post
#6
|
|
Grupa: Przyjaciele php.pl Postów: 554 Pomógł: 0 Dołączył: 4.04.2002 Skąd: Tychy Ostrzeżenie: (0%) |
Nie no klasa. Wlasnie czegos takiego poszukiwalem.
Dzieki wielkie . -------------------- "Real children don't go hoppity-skip unless they are on drugs."
|
|
|
28.12.2003, 00:48:10
Post
#7
|
|
Grupa: Przyjaciele php.pl Postów: 554 Pomógł: 0 Dołączył: 4.04.2002 Skąd: Tychy Ostrzeżenie: (0%) |
version 2
Wasze rozwiazanie (FiDOa Wankstera ) tak mi sie spodobalo ze postanowilem przy ich pomocy tworzyc cale formularze - dzieki czemu naprawde zaoszczedze wiele czasu na przygotowanie osobnych szablonow i akcji do pokazywania formularzy. Natrafilem jednak na pewien problem - po stworzeniu formularza nie chce go wysylac . Kiedy stosuje zwyklego submita nic sie nie dzieje a kiedy zastosuje onclick="document.nazwa_forma.submit()" wyskakuje Cytat Błąd: missing ; before statement
Kod źródłowy: document.3.submit(); Hmm moze pokaze kod: Kod function changeAction( sub_group_id )
{ AF = document.getElementById( sub_group_id ); form = "<form action='{l}index.php?m=acces_module|a=show_groups{/l}' method='post' name='" + sub_group_id + "'>"; AF.innerHTML = form; AF.innerHTML += newInput( 'text', 'name', form ); AF.innerHTML += newInput( 'hidden', 'sub_group_id', sub_group_id ); submit = "onClick ='document." + sub_group_id + ".submit();'"; AF.innerHTML += newInput( 'submit', '', 'Add', '', submit ); AF.innerHTML += "</form>"; } function newInput( type, name, value, style, action ) { return '<input type="' + type + '" name="' + name + '" value="' + value + '" style="' + style + '" ' + action +' />'; } no i oczywiscie Kod <div id="{$group.id}" style="display: inline;"><a href="javascript:changeAction( '{$group.id}' );"> +</a></div>
Czyzbym cos przegapil? -------------------- "Real children don't go hoppity-skip unless they are on drugs."
|
|
|
29.12.2003, 12:37:39
Post
#8
|
|
Grupa: Przyjaciele php.pl Postów: 554 Pomógł: 0 Dołączył: 4.04.2002 Skąd: Tychy Ostrzeżenie: (0%) |
dobra z tym problemem sobie poradzilem (dodalem "form_" napoczatku nazwy formularza i poszlo). Problem w tym ze mimo ze niby wysyla formularz ale tak na nastepnej stronie nie widac danych wprowadzonych w nowo stworzone inputy. Wiec moje pytanie brzmi - Czy wogole da sie w js dynamicznie tworzyc formularze, czy od razu mam sobie z tym dac spokoj?
-------------------- "Real children don't go hoppity-skip unless they are on drugs."
|
|
|
Wersja Lo-Fi | Aktualny czas: 27.04.2024 - 13:45 |