Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [PHP][HTML][JavaScript]Wyskakujący komunikat
Szunaj85
post
Post #1





Grupa: Zarejestrowani
Postów: 392
Pomógł: 7
Dołączył: 11.05.2008

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


Poniżej mam kod:
  1. <td><input type="radio" name="glos" value="1" />Tak<br /></td>
  2. <td><input type="radio" name="glos" value="2" />Nie<br /></td>
  3. <input type="submit" value="Zagłosuj" />

I teraz mam pytanie. Mianowicie co trzeba dopisać do tego kodu żeby w momencie kiedy użytkownik nie zaznaczy żadnej odpowiedzi, ale naciśnie "zagłosuj" wyskoczył komunikat informujący go o tym fakcie, no i oczywiście nie pozwolił zagłosować dopuki nie zaznaczy jakiejś odpowiedzi.
To się chyba nazywa wyskakujące okienko. rolleyes.gif

Ten post edytował Szunaj85 12.09.2008, 17:15:59


--------------------
Jeśli Ci pomogłem wciśnij Jeśli mi pomożesz wcisnę
Go to the top of the page
+Quote Post
sowiq
post
Post #2





Grupa: Zarejestrowani
Postów: 1 890
Pomógł: 339
Dołączył: 14.12.2006
Skąd: Warszawa

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


Kod
<td><input type="radio" name="glos" value="1" />Tak<br /></td>
<td><input type="radio" name="glos" value="2" />Nie<br /></td>
<input type="submit" value="Zagłosuj" />


Jeśli ma być na szybko i tak, jak się nie powinno pisać, to wystarczy:

Kod
<td><input type="radio" name="glos" id="glos1" value="1" />Tak<br /></td>
<td><input type="radio" name="glos"  id="glos2" value="2" />Nie<br /></td>
<input type="submit" value="Zagłosuj" onclick="if(document.getElementById('glos1').checked || document.getElementById('glos2').checked) alert('Dzięki za głos!'); else alert('Wybierz odpowiedź, baranie! :P')" />
Go to the top of the page
+Quote Post
Szunaj85
post
Post #3





Grupa: Zarejestrowani
Postów: 392
Pomógł: 7
Dołączył: 11.05.2008

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


Cytat
Jeśli ma być na szybko i tak, jak się nie powinno pisać, to wystarczy:
A jak ma być trochę wolniej i tak jak się powinno robić. tongue.gif
A tak na serio sprawdzałem ten kod i nie działa, po za tym sowiq nie przeczytałeś dokładnie tego co napisałem.
Cytat
Co trzeba dopisać do tego kodu żeby w momencie kiedy użytkownik nie zaznaczy żadnej odpowiedzi, ale naciśnie "zagłosuj" wyskoczył komunikat informujący go o tym fakcie, no i oczywiście nie pozwolił zagłosować dopuki nie zaznaczy jakiejś odpowiedzi.
Okno ma wyskakiwać tylko wtedy, kiedy użytkownik nie zaznaczy żadnej odpowiedzi.
A jak zaznaczy jedną z odpowiedzi nie ma nic wyskakiwać. biggrin.gif
A żeby wątpliwości nie było chodzi o takie okno jak poniżej:



Jeszcze jedno gdyby było to możliwe to wolałbym żeby obeszło się bez javascript.

Nie znajdzie się nikt, kto by pomógł. Problem dla większości nie jest wielki. sad.gif

Ten post edytował Szunaj85 13.09.2008, 12:56:28


--------------------
Jeśli Ci pomogłem wciśnij Jeśli mi pomożesz wcisnę
Go to the top of the page
+Quote Post
matx132
post
Post #4





Grupa: Zarejestrowani
Postów: 243
Pomógł: 19
Dołączył: 12.09.2005

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


  1. function spr()
  2. {
  3. var formularz=document.forms[0];
  4. if(document.getElementById('glos1').checked || document.getElementById('glos2').checked)
  5. {
  6. formularz.submit();
  7. }
  8. else alert('Wybierz odpowiedź,')
  9. }
  10. <td><input type="radio" name="glos" id="glos1" value="1" />Tak<br /></td>
  11. <td><input type="radio" name="glos" id="glos2" value="2" />Nie<br /></td>
  12. <input type="button" value="Zagłosuj" onclick="spr()" />
Go to the top of the page
+Quote Post
Shili
post
Post #5





Grupa: Zarejestrowani
Postów: 1 085
Pomógł: 231
Dołączył: 12.05.2008

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


Moim zdaniem lepsze jest coś takiego:
  1. function spr()
  2. {
  3. if(document.getElementById('glos1').checked || document.getElementById('glos2').checked){
  4. return true;
  5. }
  6. else {
  7. alert('Wybierz odpowiedź,');
  8. return false;
  9. }
  10. }
  11. <form action="" method="post" onsubmit="return spr();">
  12. <input type="radio" name="glos" id="glos1" value="1" />Tak<br />
  13. <input type="radio" name="glos" id="glos2" value="2" />Nie<br />
  14. <input type="submit" value="Zagłosuj" />
  15. </form>

onClick co prawda powinno wystąpić nawet jeśli nie kliknie się myszą, tylko spacją (tak, tak, można, nawet od czasu do czasu sama tak robię), jednak submit i return false lub true jest bardziej profesjonalne moim zdaniem. Innymi słowy - user ma wyłączone js - formularz wyśle się i tak, a na poziomie php wyłapie się błędy. W przykładzie powyżej - user ma wyłączone js - może na formularz co najwyżej nakichać.
Go to the top of the page
+Quote Post
Szunaj85
post
Post #6





Grupa: Zarejestrowani
Postów: 392
Pomógł: 7
Dołączył: 11.05.2008

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


A jeszcze takie pytanko w Firefox 3 działa wyskakujący komunikat, ale już pod Internet Explorer 7 nie. Czy da się coś z tym zrobić czy to taki urok Internet Explorer-a 7. Wiem, że z nim programiści mieli wiele problemów ze mną włącznie. dry.gif


--------------------
Jeśli Ci pomogłem wciśnij Jeśli mi pomożesz wcisnę
Go to the top of the page
+Quote Post
Shili
post
Post #7





Grupa: Zarejestrowani
Postów: 1 085
Pomógł: 231
Dołączył: 12.05.2008

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


Mi tam pod IE7 wyskakuje, wydając irytujący odgłos w dodatku. Pod IE6 też wyskakuje z odgłosem, ba, nawet pod 5.5 wyskakuje.

Jeśli modyfikowałeś kod, to zarzuć.
Go to the top of the page
+Quote Post
Szunaj85
post
Post #8





Grupa: Zarejestrowani
Postów: 392
Pomógł: 7
Dołączył: 11.05.2008

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


Shili, jak sama to określiłaś nie zarzuciłem kodu bo wiedziałem, że nawet lekko przeze mnie zmodyfikowany nie on jest problemem. Kilka minut później doszedłem co jest nie tak. Wszystko zależy jak masz poustawiane w Internet Explorer. cool.gif
Teraz i mnie wyskakuje wydając irytujący odgłos. biggrin.gif


--------------------
Jeśli Ci pomogłem wciśnij Jeśli mi pomożesz wcisnę
Go to the top of the page
+Quote Post

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: 21.08.2025 - 20:35