Witam, napisałem sobie skrypt walidujący formularz, bez jego wysyłania. Dokładnie taki sam tyle, że dla input type="text" działał bez problemu, natomiast poniższy dla input type="radio" nie działa. Validator podpowiada mi, że zmienna pobierana z formularza - no1 nie posiada wartości, ale nie wiem dlaczego? Czy radio działa inaczej niż text

[JAVASCRIPT] pobierz, plaintext
  1. <script type="text/javascript">
  2. function error(tekst1, tekst_punkty, tekst_procenty) {
  3. if (errfound) return;
  4. document.getElementById('jeden').innerHTML = tekst1;
  5.  
  6. document.getElementById('idpunkty').innerHTML = tekst_punkty;
  7. document.getElementById('idprocenty').innerHTML = tekst_procenty;
  8.  
  9. errfound = true;
  10. }
  11. function validate() {
  12. errfound = false;
  13. var odp1 = "A";
  14. var brak = "<img src=\"x.jpg\"> <span style=\"color:red\">Brak odpowiedzi,</span><span style=\"color:green\"> poprawnie:</span> ";
  15. var lub = " lub ";
  16. var br = "<br/>";
  17. var bledy = "";
  18. var poprawnie = "<img src=\"x.jpg\"><span style=\"color:red\">Źle,</span> <span style=\"color:green\">poprawnie:</span> ";
  19. var blad1 = "";
  20.  
  21. var punkty = 0;
  22. with (document.forms[0]) {
  23.  
  24.  
  25.  
  26.  
  27. if (no1.value.toLowerCase() == odp1.toLowerCase() ) { blad1 += "<img src=\"tick.jpg\"> <br/>";punkty++;}
  28. else if(no1.value == "") {blad1 += brak + odp1 + br;}
  29. else {blad1 += poprawnie + odp1 + br; }
  30.  
  31.  
  32.  
  33. var procenty = punkty * 100 / 10
  34.  
  35. if (blad1 != "") error(blad1, punkty, procenty);
  36. }
  37. return !errfound;
  38. }
  39. function blokada(form)
  40. {
  41. var pola = form.getElementsByTagName('*');
  42. for(i = 0; i < pola.length; ++i)
  43. {
  44. if(pola[i].tagName.toLowerCase() == 'input' || pola[i].tagName.toLowerCase() == 'textarea' || pola[i].tagName.toLowerCase() == 'select' || pola[i].tagName.toLowerCase() == 'button')
  45. {
  46. pola[i].disabled = true;
  47. }
  48. }
  49. }
  50. </script>
[JAVASCRIPT] pobierz, plaintext





  1. <form action="#" method="post" onsubmit="blokada(this); return validate();">
  2.  
  3. <p>1) Adrian ma na imię: </p>
  4. <input type="radio" name="no1" value="A" />A) Adrian<br/>
  5. <input type="radio" name="no1" value="B" />B) Adriano<br/>
  6. <input type="radio" name="no1" value="C" />C) Eidrian<br/>
  7. <input type="radio" name="no1" value="D" />D) Adruch<br/>
  8. <span id="jeden"></span><br/>
  9.  
  10.  
  11.  
  12.  
  13. <p>Twój wynik:</p>
  14. <span style="color:green;" id="idpunkty">0</span><span> / 10 - </span><span style="color:green;" id="idprocenty">0</span> %
  15. <input type="submit" value="wyślij" />
  16. </form>