Autor Zpráva
Chlupp
Profil
Dobrý den, mám vytvořený takovýto formulář:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">

<html>
  <head>

  <meta http-equiv="content-type" content="text/html; charset=windows-1250">
  <meta http-equiv="content-language" content="cs" />
    <meta name="description" content="Kontrola odesílaných dat pomocí Java Scriptu" />
    <meta name="keywords" content="kontrola odesílaných dat, java script" />
  <meta name="robots" content="all,follow" />
  <title>Kontrola odesílaných dat pomocí Java Scriptu</title>    
  </head>

  <body bgcolor="#DCEDFD">
<table style="height:100%;" width="100%" cellSpacing="0" cellPadding="0" border="0">
<tr><td align="center" valign="top">
<form id="formular" action="rezervace111.php" method="post" onsubmit="return test()">
<input type="hidden" value="Stepy + posilování s činkami" name="predmet">
<input type="hidden" value="Pondělí 17:45-18:45" name="den_kurzu">
<input type="hidden" value="noreply@centrumpaprsek.cz" name="komu">
<fieldset>
<h2><legend align="center">Stepy + posilování s činkami</legend></h2>
<table>
<tr>  
<th valign="top" align="right">
<label for="jmeno">Kdy:</label>
</th> 
<td>
<input type="radio" name="kdy" id="termin1" value="Pondělí 17:45-18:45">Pondělí 17:45-18:45<br>
<input type="radio" name="kdy" id="termin2" value="Pátek 18:45-19:45">Pátek 18:45-19:45
</td>
</tr>  
<tr>
<th align="right">
<label for="jmeno">Jméno:</label>
</th>
<td>
<input type="text" name="jmeno" size="24">
</td>
</tr>
<tr>
<th align="right">
<label for="telefon">Telefon:</label>
</th>
<td>
<input type="text" name="telefon" size="24">
</td>
</tr>
<tr>
<th align="right">
<label for="email">E-mail:</label>
</th>
<td>
<input type="text" name="email" size="24">
</td>
</tr>
<tr>
<td colspan="2" align="right"> !Při rezervaci více cvičících, uveďte prosím jejich jména!
</td>
</tr>
<tr>
<th align="right" class="comment">
<label for="poznamka">Poznámka:</label>
</th>
<td>
<textarea name="poznamka" cols="30" rows="5"></textarea>
</td>
</tr>
<tr>
<td colspan="2" align="center"><input type="submit" name="odeslano" class="button" value="Odeslat">
</td>
</tr> 
</table>
</fieldset>
</form>
</td></tr>
</table>

</form>

    <script type="text/javascript">
    /* <![CDATA[ */

    function test_email(adresa) {
      re = /^[^.]+(\.[^.]+)*@([^.]+[.])+[a-z]{2,4}$/;
      return adresa.search(re) == 0;
    }


    function test() {

    if(document.forms.formular.kdy[1termin].checked') {
      alert("Vyberte termín!");
      document.forms.formular.kdy[1termin].focus();
      return false;
      }  
      
     else if(document.forms.formular.jmeno.value == '') {
      alert("Napište své Vaše jméno!");
      document.forms.formular.jmeno.focus();
      return false;
      }   
      else if (document.forms.formular.telefon.value == '') {
      alert("Napište  telefon!");
      document.forms.formular.telefon.focus();
      return false;
      } 
      else if(document.forms.formular.email.value == '') {
      alert("Napište Váš e-mail!");
      document.forms.formular.email.focus();
      return false;
      }
      else if(!test_email(self.document.forms.formular.email.value)) {
      alert("Zadaná emailová adresa není ve správném formátu!!");
      document.forms.formular.email.focus();
      return false;
      }
      
      else {
      return true;
      }
    }
    

    /* ]]> */
   </script>


</body>
</html>
 
cílem je zkontrolovat, zda jsou pole vyplněná
a že je vybrán jeden termín ještě před odesláním na php.
Řeším to javascripterm,
ale nedaří se mi kontrolovat radio vybrání termínu.
Nechci mít jeden vybraný již na začátku, protože to uživatel většinou nepřecvakne.
Omlouvám se, že je to podobné téma, které jsem již tady našel, ale stále se mi to nedaří nastavit. Pomůže mi někdo?
Díky moc
peta
Profil
Radio ma checked s hodnotou true nebo false. Value nabyva az pri odeslani formulare ne pred.
Sak mas na to priklad Příklad práce s atributem disabled u radio-buttonů .
Chlupp
Profil
[#2] peta
ten příklad jsem našel i jsem koukal na skript a snažil se ho pochopit, ale bez úspěchu.
Nejsem programátor jen si musím udělat tento formulář, protože mi ho hosting v jejich redakčním systému neumožňuje.
Mohl by jsi mi to nějak vepsat do toho skriptu prosím, Vážně by jsi mi tím moc pomohl. Děkuji
pako
Profil *
pridaj si do kodu tuto funkciu:
    function checkRadio() {
        var checkedRadio = false;
        var a = document.forms.formular.kdy;
        for (var i=0;i<a.length;i++) {
            if(a[i].checked) {
                checkedRadio = true;
            }
        }
        return checkedRadio;
    }
a prvu podmienku if v tvojom starom kode nahrad tymto kodom:
    if(!checkRadio()) {
      alert("Vyberte termín!");
      return false;
      }  
Chlupp
Profil
[#4] pako
Funguje to!!!
Děkuji mnohokrát za radu. Velice si toho Vážím.

Vaše odpověď

Mohlo by se hodit

Neumíte-li správně určit příčinu chyby, vkládejte odkazy na živé ukázky.
Užíváte-li nějakou cizí knihovnu, ukažte odpovídajícím, kde jste ji vzali.

Užitečné odkazy:

Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm: