Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: po klikniecu w button wysuwa sie formularz
Forum PHP.pl > Forum > Po stronie przeglądarki > HTML \ XHTML
spayk
Prosze o pomoc jak zrobic tak zeby po kliknieciu w button wysunął się formularz tzn button zchodzi na dól i nad nim pojawia sie formularz i zeby na buttonie zmienił sie value
kamil4u
Musisz skorzystać z JS, a do tego potrzebna jest jakaś wiedza.. Zacznij od:
- DOM
- DHTML
- Zdarzenia - podstawy

Następnie stwórz formularz i przycisk. Za pomocą CSS ukryj formularz. W chwili kliknięcia zmień value przycisku i styl css( display ) całego formularza. Jeżeli chcesz to zanimować w czystym JS to sobie daruj - musisz znać chociaż podstawy. Możesz ew. skorzystać z jakieś biblioteki JS np. jQuery, ale tego też będziesz musiał się nauczyć.

Pozdrawiam i życzę powodzenia smile.gif
spayk
a jest cos gotowego?
myslałem zeby skorzystac z ajaxa
mam button i chce zeby po klikniecu wysunoł się formularz i jak formularz jest wysunięty to przycisk działa jako submit do wysłania
moze mi ktoś pomóc jak to zrobic bez animacji ?
kamil4u
Nie wysunoł ,a wysunął winksmiley.jpg

Wiesz co to jest AJAX?
Najprościej tak jak Ci napisałem, aby Ci jeszcze ułatwić skonkretyzuje:
- nadajesz id elementowi, następnie, żeby się odwołać do tego elementu piszesz = document.getElementById('Twoje_id') - jest to referencja do elementu
- następnie, aby zmienić styl CSS(np .display) w JS piszesz: referencja_do_elementu.style.display = 'block';
- aby zmienić prawie dowolny atrybut(np. value) piszesz: referencja_do_elementu.value = 'nowe value';
- dodanie funkcji pod kliknięcie -> referencja_do_elementu.onclick = function(){ /*tu instrukcje do wywołania*/ };
Wicepsik
Cytat(spayk @ 29.07.2010, 17:50:01 ) *
moze mi ktoś pomóc jak to zrobic bez animacji ?

  1. <form action="#" method="post" id="formularz" style="display:none;">
  2. <input type="text" name="pole">
  3. </form>
  4. <input type="button" value="Pokaz formularz" onclick="document.getElementById('formularz').style.display = 'block'; this.value = 'Pokazales formularz'">
spayk
a tak zeby hmm albo moze ten button zeminił klase albo zeby był przyciskiem do wysłania formularza
kamil4u
Dodaj tam(w onclick): this.type = 'submit'; i/lub this.className = 'tu_moja_klasa';
spayk
no tak myslałem ale wtedy przycisk jest poza formularzem
kamil4u
Racja.. - możesz wysłać formularz za pomocą submit() - poprzez kod:
Kod
onclick="(el = document.getElementById('formularz')).style.display = 'block'; this.value = 'Pokazales formularz'; this.onclick= el.submit;"


Jednak taki długi kod w znaczniku onclick to moim zdaniem przegięcie i powinieneś to zrobić tak jak pisałem wcześniej.
Możesz też ukrywać/kasować ten przycisk, a prawidłowy input typu 'submit' mieć zawsze w formularzu.

PS. Nie jestem pewien zapisu this.onclick= el.submit; ew. spróbuj tak jak wcześniej pisałem z function(){ ... };
spayk
a co zrobic zeby znikł po kliknieciu ten przycisk
i wygladała by funkcji onclick na zamkniecie formularza ?
Wicepsik
A może zaczniesz czytać jakiś kurs js ? Przez 4 godziny od założenia tematu nic nie przeczytałeś ?
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.