Ocena wątku:
  • 0 głosów - średnia: 0
  • 1
  • 2
  • 3
  • 4
  • 5
Problem z validowaniem radio
#1
Prezentowany poniżej kod działał do input=text natomiast gdy zmieniłem na radio validator powiadamia mnie, że wartość no1 jest pusta, dlaczego?
Kod:
<script type="text/javascript">
function error(tekst1, tekst_punkty, tekst_procenty) {
    if (errfound) return;
        document.getElementById('jeden').innerHTML = tekst1;
          document.getElementById('idpunkty').innerHTML = tekst_punkty;    
          document.getElementById('idprocenty').innerHTML = tekst_procenty;        
                      
errfound = true;
}
function validate() {
    errfound = false;
     var odp1 = "A";
  
     var brak = "<img src=\"x.jpg\"> <span style=\"color:red\">Brak odpowiedzi,</span><span style=\"color:green\"> poprawnie:</span> ";
     var lub = " lub ";
     var br = "<br/>";
    var bledy = "";
     var poprawnie = "<img src=\"x.jpg\"><span style=\"color:red\">Źle,</span> <span style=\"color:green\">poprawnie:</span> ";
     var blad1 = "";
    
    with (document.forms[0]) {
    
    
    

        if (no1.value.toLowerCase() == odp1.toLowerCase() ) { blad1 += "<img src=\"tick.jpg\"> <br/>";punkty++;}
          else if(no1.value == "") {blad1 += brak + odp1 + br;}    
           else {blad1 += poprawnie + odp1 + br; }        
        
    
    
        
    
     var procenty = punkty * 100 / 10
    
        if (blad1 != "")  error(blad1, punkty, procenty);
    }
return !errfound;
}
function blokada(form)
    {
        var pola = form.getElementsByTagName('*');
        for(i = 0; i < pola.length; ++i)
        {
            if(pola[i].tagName.toLowerCase() == 'input' || pola[i].tagName.toLowerCase() == 'textarea' || pola[i].tagName.toLowerCase() == 'select' || pola[i].tagName.toLowerCase() == 'button')
            {
                pola[i].disabled = true;
            }
        }
    }
</script>




    <form name="form1" action="#" method="post" onsubmit="blokada(this); return validate();">
    
        <p>1) Adrian ma na imię: </p>
        <input type="radio" name="no1" value="A" />A) Adrian<br/>
        <input type="radio" name="no1" value="B" />B) Adriano<br/>
        <input type="radio" name="no1" value="C" />C) Eidrian<br/>
        <input type="radio" name="no1" value="D" />D) Adruch<br/>
        <span id="jeden"></span><br/>
    
        <p>Twój wynik:</p>
        <span style="color:green;" id="idpunkty">0</span><span> / 10  - </span><span style="color:green;" id="idprocenty">0</span> %
        <input type="submit" value="wyślij" />
    </form>
Odpowiedz


Podobne wątki…
Wątek: Autor Odpowiedzi: Wyświetleń: Ostatni post
  Input radio FasOlQa 4 3,732 01-09-2011, 22:45
Ostatni post: Rayshar

Skocz do:


Użytkownicy przeglądający ten wątek:
Sponsorzy i przyjaciele
SeoHost.pl