![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 420 Pomógł: 44 Dołączył: 22.10.2008 Ostrzeżenie: (0%) ![]() ![]() |
Witam interesują mnie dwa efekty uzyskane w tej ankiecie http://www.moje-ankiety.pl/wypelnij/kwestionariusz/4967 zaznaczam że temat jest zupełnie przypadkowy (IMG:http://forum.php.pl/style_emoticons/default/smile.gif) .
Chodzi mi w jaki sposób uzyskać taki efekt jak jest tam po kliknięciu wyczyść odpowiedź. A drugi są pytania otwarte pola textarea po kliknięci którego zaznacza się od razu odpowiedź w tym momencie jest to checkbox ale interesują mnie również kontrolki typu radio. Za wszelkie rady i sugestię będę bardzo wdzięczny. |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 726 Pomógł: 129 Dołączył: 10.01.2008 Skąd: Gdańsk Ostrzeżenie: (0%) ![]() ![]() |
1. <input type="reset" value="Wyczyść formularz" />
2. Do textarea dodajesz zdarzenie onFocus które zaznacza checkboxa lub radio. |
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 2 350 Pomógł: 512 Dołączył: 4.01.2009 Skąd: Wrocław / Świdnica Ostrzeżenie: (0%) ![]() ![]() |
Cytat Chodzi mi w jaki sposób uzyskać taki efekt jak jest tam po kliknięciu wyczyść odpowiedź. Kod onClick="return confirm('Tu pytanie?'); funkcja_czyszcząca_ pola();" Cytat A drugi są pytania otwarte pola textarea po kliknięci którego zaznacza się od razu odpowiedź w tym momencie jest to checkbox ale interesują mnie również kontrolki typu radio. Kod <input type="checkbox" id="test"><textarea onfocus="document.getElementById('test').checked = true;">
|
|
|
![]()
Post
#4
|
|
Grupa: Zarejestrowani Postów: 420 Pomógł: 44 Dołączył: 22.10.2008 Ostrzeżenie: (0%) ![]() ![]() |
1. <input type="reset" value="Wyczyść formularz" /> Właśnie nie chcę inputa tylko taki link jak jest tu w ankiecie i żeby czyścił nie cały formularz tylko jedną odpowiedź drugie zaraz przetestuje i zobaczę czy o to mi chodziło WIELKIE DZIĘKI ZA RADĘ z zaznaczeniem chcboxa działa Jeszcze raz dzięki . Jeszcze jak by mi ktoś lekko podpowiedział jak powinna wyglądać funkcja czyszcząca tylko jedno pytanie |
|
|
![]()
Post
#5
|
|
Grupa: Zarejestrowani Postów: 2 350 Pomógł: 512 Dołączył: 4.01.2009 Skąd: Wrocław / Świdnica Ostrzeżenie: (0%) ![]() ![]() |
Cytat Jeszcze jak by mi ktoś lekko podpowiedział jak powinna wyglądać funkcja czyszcząca tylko jedno pytanie Dla checkbox-a, radio: Kod referencja_do_elementu.checked = false; Dla textarea,input type="text": Kod referencja_do_elementu.value = ''; referencja_do_elementu: - document.getElementById - document.getElementsByName - document.getElementsByTagName - inne - rzadko używane to nie podaje (IMG:http://forum.php.pl/style_emoticons/default/smile.gif) |
|
|
![]()
Post
#6
|
|
Grupa: Zarejestrowani Postów: 420 Pomógł: 44 Dołączył: 22.10.2008 Ostrzeżenie: (0%) ![]() ![]() |
Coś mi nie wychodzi napisałem taką funkcję
a tak wywołuje czyszczenie a wszystkie checkboxy kontrolki radio lub pola textarea mają name ustawione na 2 |
|
|
![]()
Post
#7
|
|
Grupa: Zarejestrowani Postów: 726 Pomógł: 129 Dołączył: 10.01.2008 Skąd: Gdańsk Ostrzeżenie: (0%) ![]() ![]() |
To tak nie działa. Musisz to co zwróci Ci getElementsByName przetworzyć w pętli.
|
|
|
![]()
Post
#8
|
|
Grupa: Zarejestrowani Postów: 2 350 Pomógł: 512 Dołączył: 4.01.2009 Skąd: Wrocław / Świdnica Ostrzeżenie: (0%) ![]() ![]() |
Cytat Musisz to co zwróci Ci getElementsByName przetworzyć w pętli. Po co (IMG:http://forum.php.pl/style_emoticons/default/smile.gif) - no chyba, że chcesz usunąć wszystko co ma 'name' = 2, ale z tego co zrozumiałem wyżej jest inaczej: Kod <script type="text/javascript">
function eraseCheck(name) { document.getElementsByName(name)[0].checked = false; } function eraseValue(name) { document.getElementsByName(name)[0].value = ''; } </script> Ten post edytował kamil4u 11.06.2009, 20:21:17 |
|
|
![]()
Post
#9
|
|
Grupa: Zarejestrowani Postów: 420 Pomógł: 44 Dołączył: 22.10.2008 Ostrzeżenie: (0%) ![]() ![]() |
kurcze czegoś w tym javascript nie rozumię przykładowo wygląda odpowiedź tak:
i po kliknięciu chcę wyczyszczyć wszystkie odpowiedzi z name="13[]" więc tak jak tu kolega poradził jeśli wszystkie to trzeba w pętli przejechać
no i nie działa nie działa mi też sposób ten document.getElementsByName(name)[0].checked = false; co rozumiem że powinien w tym wypadku wyczyszczyć pierwszy element z tablicy? |
|
|
![]()
Post
#10
|
|
Grupa: Zarejestrowani Postów: 2 350 Pomógł: 512 Dołączył: 4.01.2009 Skąd: Wrocław / Świdnica Ostrzeżenie: (0%) ![]() ![]() |
Nie działa bo name masz 13[], a nie 13 (IMG:http://forum.php.pl/style_emoticons/default/smile.gif)
|
|
|
![]()
Post
#11
|
|
Grupa: Zarejestrowani Postów: 420 Pomógł: 44 Dołączył: 22.10.2008 Ostrzeżenie: (0%) ![]() ![]() |
jak zmienię na 13 to też nie działa a po za tym potrzebuje to w skrypcie php odebrać jako tablicę więc musi być 13[]
|
|
|
![]()
Post
#12
|
|
Grupa: Zarejestrowani Postów: 2 350 Pomógł: 512 Dołączył: 4.01.2009 Skąd: Wrocław / Świdnica Ostrzeżenie: (0%) ![]() ![]() |
Kod <script>
function erase(n,t,a,i){ if(!confirm('Czy napewno chcesz wyczyszczyć tą odpowiedź?')) return false; t=document.getElementsByName(n); for(i=0; a=t[i++];){ if(a.type == 'radio' || a.type == 'checkbox') a.checked = false; else a.value = ''; } return true; } </script> <a class="erease1" href="#" onClick="return erase('13[]');">(wyczyść odpowiedź...)</a> <ul><li><input type="checkbox" value="14" name="13[]" id="zaznacz1"/> zaznacz1</li> <li><input type="checkbox" value="15" name="13[]" id="zaznacz2"/>zaznacz2</li> <li> <input type="checkbox" value="16" name="13[]" id="zaznacz3"/> zaznacz3<br/> <textarea name="13[]" cols="50" rows="1" onfocus="document.getElementById('zaznacz3').checked = true;"></textarea> </li></ul> |
|
|
![]()
Post
#13
|
|
Grupa: Zarejestrowani Postów: 420 Pomógł: 44 Dołączył: 22.10.2008 Ostrzeżenie: (0%) ![]() ![]() |
Wielkie dzięki teraz elegancko działa nawet rozszerzyłem to o pola typu select jedno jest pewne bez waszej pomocy jeszcze troszkę bym czasu przy tym spędził no cóż pora sobie zakupić jakąś nową lekturę z javascriptu.
no i znowu się zaciąłem przy tych tablicach, a więc teraz mam problem z walidacją formularza:
no i skrypt którym chcę zrobić walidację:
Nie działa mi żaden zapis: form.4[0].value form.4[].value form.4.value Z góry dzięki za rady |
|
|
![]()
Post
#14
|
|
Grupa: Moderatorzy Postów: 15 467 Pomógł: 1451 Dołączył: 25.04.2005 Skąd: Szczebrzeszyn/Rzeszów ![]() |
Nie nazywaj elementów od cyfr!
Kod form.[4][0].value ? |
|
|
![]()
Post
#15
|
|
Grupa: Zarejestrowani Postów: 420 Pomógł: 44 Dołączył: 22.10.2008 Ostrzeżenie: (0%) ![]() ![]() |
Nie nazywaj elementów od cyfr! Kod form.[4][0].value ? No niestety też nie działa (IMG:http://forum.php.pl/style_emoticons/default/sad.gif) A jeśli chodzi o nazywanie elementów to normalnie tego nie robię ale teraz robię coś na wzór www.moje-ankiety.pl, takie formularze generowane z bazy danych i stąd takie nazwy jest to po prostu id pytania |
|
|
![]()
Post
#16
|
|
Grupa: Moderatorzy Postów: 15 467 Pomógł: 1451 Dołączył: 25.04.2005 Skąd: Szczebrzeszyn/Rzeszów ![]() |
Ajjj, mój błąd:
Kod form.elements[4][0].value Ale wątpię, aby to zadziałało. Swoją drogą, przez tyle czasu mogłeś sam pokombinować. Zmień identyfikatory na prawidłowe, zgodne ze specyfikacją: http://www.w3.org/TR/html401/types.html#type-name |
|
|
![]()
Post
#17
|
|
Grupa: Zarejestrowani Postów: 420 Pomógł: 44 Dołączył: 22.10.2008 Ostrzeżenie: (0%) ![]() ![]() |
Cały czas kombinuję (IMG:http://forum.php.pl/style_emoticons/default/smile.gif) w ostateczności zrezygnowałem przy textarea z tablicy po za tym brakowało parę klamer i ostateczna forma wyszła mi taka
Kod document.form.open_4.value Dzięki za rady |
|
|
![]() ![]() |
![]() |
Aktualny czas: 6.10.2025 - 19:02 |