Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [JavaScript]Samoczynne wysłanie formularza.
szczabik
post
Post #1





Grupa: Zarejestrowani
Postów: 226
Pomógł: 1
Dołączył: 13.05.2008

Ostrzeżenie: (0%)
-----


Jak mogę samoczynne wysłać formularz po np. 3 s napisałem taki kod ale nie działa. Może ktoś podpowiedzieć jak to zrobić ?
  1. <script language='JavaScript'>
  2. function test() {
  3. var form = document.getElementById("dodaj");
  4. form.sumbit();
  5. }
  6. setTimeout(test, 3000);
  7.  
  8. <form name="test" method="post" action="dodaj.html">
  9. <input type="submit" id="dodaj" name="submit" value="Wyslij"/>
  10. </form>
Go to the top of the page
+Quote Post
2 Stron V   1 2 >  
Start new topic
Odpowiedzi (1 - 19)
kamil4u
post
Post #2





Grupa: Zarejestrowani
Postów: 2 350
Pomógł: 512
Dołączył: 4.01.2009
Skąd: Wrocław / Świdnica

Ostrzeżenie: (0%)
-----


Nadaj id <form> i wtedy podmień document.getElementById("dodaj"); na document.getElementById("xxxxxxxx"); i cały kod JS daj 'pod' HTML

Ten post edytował kamil4u 22.04.2009, 18:41:14


--------------------
Go to the top of the page
+Quote Post
szczabik
post
Post #3





Grupa: Zarejestrowani
Postów: 226
Pomógł: 1
Dołączył: 13.05.2008

Ostrzeżenie: (0%)
-----


Zrobilem tak nie działa. Wczesniej też tak próbowałem i nie działa.
  1. <script language='JavaScript'>
  2. function test() {
  3. var form = document.getElementById("dodaj");
  4. sumbit.form;
  5. }
  6. setTimeout(test, 3000);
  7.  
  8. <form name="test" id="dodaj" method="post" action="dodaj.html">
  9. <input type="submit" name="submit" value="Wyslij"/>
  10. </form>
  11.  
  12. </body>
  13. </html>
Go to the top of the page
+Quote Post
kamil4u
post
Post #4





Grupa: Zarejestrowani
Postów: 2 350
Pomógł: 512
Dołączył: 4.01.2009
Skąd: Wrocław / Świdnica

Ostrzeżenie: (0%)
-----


W między czasie wyedytowałem: daj kod JS pod HTML lub zainteresuj się zdarzeniem load w JS(szukaj pod onLoad)


--------------------
Go to the top of the page
+Quote Post
szczabik
post
Post #5





Grupa: Zarejestrowani
Postów: 226
Pomógł: 1
Dołączył: 13.05.2008

Ostrzeżenie: (0%)
-----


No ja wiem do czego jest onLoad ale nie chce odrazu przy ładowaniu strony wysłać formularz tylko po jakimś czasie np. po 30 s
Go to the top of the page
+Quote Post
piotrooo89
post
Post #6


Newsman


Grupa: Moderatorzy
Postów: 4 005
Pomógł: 548
Dołączył: 7.04.2008
Skąd: Trzebinia/Kraków




Cytat
No ja wiem do czego jest onLoad ale nie chce odrazu przy ładowaniu strony wysłać formularz tylko po jakimś czasie np. po 30 s



i właśnie dlatego używasz setTimeout


--------------------
Go to the top of the page
+Quote Post
kamil4u
post
Post #7





Grupa: Zarejestrowani
Postów: 2 350
Pomógł: 512
Dołączył: 4.01.2009
Skąd: Wrocław / Świdnica

Ostrzeżenie: (0%)
-----


Poczytaj o DOM. W Twoim kodzie chcesz pobrać element, którego jeszcze nie ma w drzewie DOM. Daj kod JS pod HTML(to najprostszy sposób)


--------------------
Go to the top of the page
+Quote Post
szczabik
post
Post #8





Grupa: Zarejestrowani
Postów: 226
Pomógł: 1
Dołączył: 13.05.2008

Ostrzeżenie: (0%)
-----


To czemu jak robie tak nie działa
  1. <script language='JavaScript'>
  2. function test() {
  3. formularz.submit();
  4. }
  5. setTimeout(test, 3000);
  6.  
  7. <form name="formularz" id="dodaj" method="post" action="dodaj.html">
  8. <input type="submit" name="submit" value="Wyslij"/>
  9. </form>


?
Go to the top of the page
+Quote Post
kamil4u
post
Post #9





Grupa: Zarejestrowani
Postów: 2 350
Pomógł: 512
Dołączył: 4.01.2009
Skąd: Wrocław / Świdnica

Ostrzeżenie: (0%)
-----


Nie napisze za Ciebie kodu - 3 razy napisałem Ci co masz zrobić. Tak trudno to zrobić? W ostatnim poście napisałem o czym powinieneś sobie poczytać - czytaj ze zrozumieniem!!!

Jak nie rozumiesz to przeczytaj to 10 razy, a jak dalej nie rozumiesz to napisz czego konkretnie!

Ten post edytował kamil4u 22.04.2009, 19:13:05


--------------------
Go to the top of the page
+Quote Post
szczabik
post
Post #10





Grupa: Zarejestrowani
Postów: 226
Pomógł: 1
Dołączył: 13.05.2008

Ostrzeżenie: (0%)
-----


Cytat(kamil4u @ 22.04.2009, 20:11:45 ) *
Nie napisze za Ciebie kodu - 3 razy napisałem Ci co masz zrobić. Tak trudno to zrobić? W ostatnim poście napisałem o czym powinieneś sobie poczytać - czytaj ze zrozumieniem!!!

Jak nie rozumiesz to przeczytaj to 10 razy, a jak dalej nie rozumiesz to napisz czego konkretnie!

Jak masz tak pomagać i pisać to nie pisz wcale. Dziękuje ci za taką pomoc chciałem wskazówkę a nie piszesz mi poczytaj o DOM.
Go to the top of the page
+Quote Post
kamil4u
post
Post #11





Grupa: Zarejestrowani
Postów: 2 350
Pomógł: 512
Dołączył: 4.01.2009
Skąd: Wrocław / Świdnica

Ostrzeżenie: (0%)
-----


Cytat
Dziękuje ci za taką pomoc chciałem wskazówkę a nie piszesz mi poczytaj o DOM.

Zastanów się co Ty piszesz: "chciałem wskazówkę"-->"poczytaj o DOM" to jest właśnie wskazówka. Poza tym to:
Cytat
Daj kod JS pod HTML
napisałem Ci 3 razy, a Ty nawet nie sprawdziłeś tego. Nacz się wreszcie czytać ze zrozumieniem, a jak Ci to nie wychodzi to daruj sobie programowanie...

Ten post edytował kamil4u 22.04.2009, 19:24:01


--------------------
Go to the top of the page
+Quote Post
szczabik
post
Post #12





Grupa: Zarejestrowani
Postów: 226
Pomógł: 1
Dołączył: 13.05.2008

Ostrzeżenie: (0%)
-----


Przeczytałem klika razy o DOM i wiem do czego służy document.getElementById ale jaktoś tutaj nie umiem tego wykorzystać a co do "Daj kod JS pod HTML" to nie wiem o co chodzi kod html jest w body.

Ten post edytował szczabik 22.04.2009, 19:37:58
Go to the top of the page
+Quote Post
kamil4u
post
Post #13





Grupa: Zarejestrowani
Postów: 2 350
Pomógł: 512
Dołączył: 4.01.2009
Skąd: Wrocław / Świdnica

Ostrzeżenie: (0%)
-----


Daj wszystko co masz pomiędzy <script>i</script> (razem ze znacznikami) pod HTML, czyli pod
Kod
<form name="formularz" id="dodaj" method="post" action="dodaj.html">
<input type="submit" name="submit" value="Wyslij"/>
</form>


Jak chcesz tak będzie - to mój ostatni post w tym temacie.

PS. I od razu widać, że nie czytałeś o DOM.

Ten post edytował kamil4u 22.04.2009, 19:43:42


--------------------
Go to the top of the page
+Quote Post
osl
post
Post #14





Grupa: Zarejestrowani
Postów: 260
Pomógł: 41
Dołączył: 6.04.2009
Skąd: Gdańsk/okolice

Ostrzeżenie: (0%)
-----


oj, chyba jeszcze raz musisz przeczytać o DOM winksmiley.jpg
obrazowo: przeglądarka laduje powiedzmy po lini html-a (uproszczenie, poważne). Widzi skrypt, zaczyna go przerabiać. W środku są odwolania do jakichś elementów, ale ich jeszcze nie ma "fizycznie" w przeglądarce, bo nie przerobiła lini poniżej skryptu... może teraz odrobine jaśniej? smile.gif

jak dasz tag <script> poniżej kodu formy to powinno być cacy. a jeszcze lepiej jak wrzucisz to do document.body.onload


EDIT: no i kamil4u mnie ubiegł smile.gif

Ten post edytował osl 22.04.2009, 19:44:10
Go to the top of the page
+Quote Post
nospor
post
Post #15





Grupa: Moderatorzy
Postów: 36 557
Pomógł: 6315
Dołączył: 27.12.2004




panowie z calym szacunkiem ale pieprzycie glupoty winksmiley.jpg

funkcja sie nie wykonuje bo setTimeout() jest źle. powinno byc:
Kod
setTimeout('test()', 3000);

teraz po 3 sekundach wejdzie do tej funkcji i pobierze forma ktory juz w DOM jest.
oczywiscie form sie nie wysle bo ta wysylka tez jest skopana, ale to juz wam pozostawiam winksmiley.jpg


--------------------

"Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista
"Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer

Go to the top of the page
+Quote Post
osl
post
Post #16





Grupa: Zarejestrowani
Postów: 260
Pomógł: 41
Dołączył: 6.04.2009
Skąd: Gdańsk/okolice

Ostrzeżenie: (0%)
-----


oj, jak się człowiek śpieszy to się zasugeruje jeszcze wcześniejszymi postami winksmiley.jpg
sorry wielkie za wtope/wprowadzanie w bląd.

(gwoli ścislości, 3 sekundy to może być czasem mało żeby załadować cale drzewo DOM. zwłaszcza dla IE6 winksmiley.jpg - testowane osobiście. )
Go to the top of the page
+Quote Post
szczabik
post
Post #17





Grupa: Zarejestrowani
Postów: 226
Pomógł: 1
Dołączył: 13.05.2008

Ostrzeżenie: (0%)
-----


Zrobilem tak jak piszecie i mimo to nie dziala
  1. </head>
  2. <form name="formularz" id="dodaj" method="post" action="dodaj.html">
  3. <input type="submit" name="submit" value="Wyslij"/>
  4. </form>
  5. <script language='JavaScript'>
  6. function test() {
  7. var form = document.getElementById("dodaj");
  8. form.submit();
  9. }
  10. setTimeout('test()', 3000);
  11. </body>
  12. </html>
Go to the top of the page
+Quote Post
piotrooo89
post
Post #18


Newsman


Grupa: Moderatorzy
Postów: 4 005
Pomógł: 548
Dołączył: 7.04.2008
Skąd: Trzebinia/Kraków




chłopaki wprowadzacie w błąd:

  1. <script type="text/javascript">
  2. function formSubmit()
  3. {
  4. setTimeout('document.getElementById("myForm").submit()', 3000);
  5. }
  6.  
  7. <form id="myForm" action="" method="get">
  8. <input type="text" name="test" />
  9. <input type="button" onclick="formSubmit()" value="ok">
  10. </form>


--------------------
Go to the top of the page
+Quote Post
szczabik
post
Post #19





Grupa: Zarejestrowani
Postów: 226
Pomógł: 1
Dołączył: 13.05.2008

Ostrzeżenie: (0%)
-----


Cytat(piotrooo89 @ 22.04.2009, 21:00:49 ) *
chłopaki wprowadzacie w błąd:

  1. <script type="text/javascript">
  2. function formSubmit()
  3. {
  4. setTimeout('document.getElementById("myForm").submit()', 3000);
  5. }
  6.  
  7. <form id="myForm" action="" method="get">
  8. <input type="text" name="test" />
  9. <input type="button" onclick="formSubmit()" value="ok">
  10. </form>


Nie działa mijają 3 sekundy i nic sie nie dzieje formularz sie nie wysyła
Go to the top of the page
+Quote Post
piotrooo89
post
Post #20


Newsman


Grupa: Moderatorzy
Postów: 4 005
Pomógł: 548
Dołączył: 7.04.2008
Skąd: Trzebinia/Kraków




Cytat
Nie działa mijają 3 sekundy i nic sie nie dzieje formularz sie nie wysyła


najwyraźniej u Ciebie u mnie wszystko OK>


--------------------
Go to the top of the page
+Quote Post

2 Stron V   1 2 >
Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 20.08.2025 - 05:53