login  Naam:   Wachtwoord: 
Registreer je!
 Forum

js radio controleren

Offline robmoorman - 14/05/2005 10:51
Avatar van robmoormanPHP interesse wat ik precies voor elkaar zie te krijgen...

als ik op mijn knop druk dan moet hij controleren als er een radiobutton is gechecked, zo ja: dan gaat hij verder (verwerkt een .php file) zo niet, dan een alert...

mijn js code:
  1. function checkPoll(form, field, message)
  2. {
  3. if(document.forms[form].elements[field].checked)
  4. {
  5. submit("poll_post");
  6. }
  7. else
  8. {
  9. alert(message);
  10. }
  11. }


mijn .tpl code:
  1. <b>{question}</b><br />
  2. <form method="post" action="" name="poll">
  3. <!-- START BLOCK : choice -->
  4. <input type="radio" name="choice" value="{choiceid}" /> {choice}<br />
  5. <!-- END BLOCK : choice -->
  6. <input type="button" value="Stemmen" name="poll_post"onClick="checkPoll('poll', 'choice', 'Er is geen keuze gemaakt.');" />
  7. </form>


voor php controle gebruik ik:
if (isset ($_POST["poll_post"])) {...}

alleen hij zegt steeds dat mijn radio's niet gechekc zijn, wie kan mij helpen...

4 antwoorden

Gesponsorde links
Offline Scott - 14/05/2005 11:24 (laatste wijziging 14/05/2005 11:25)
Avatar van Scott Gouden medaille

PHP ver gevorderde
JavaScript:
  1. function checkPoll(form, field, message)
  2. {
  3. if(document.forms[form].elements[field].checked == true)
  4. {
  5. return true;
  6. }
  7. else
  8. {
  9. alert(message);
  10. return false;
  11. }
  12. }


HTML:
  1. <b>{question}</b><br />
  2. <form method="post" action="" name="poll" onsubmit="checkPoll('poll', 'choice', 'Er is geen keuze gemaakt.');">
  3. <!-- START BLOCK : choice -->
  4. <input type="radio" name="choice" value="{choiceid}" /> {choice}<br />
  5. <!-- END BLOCK : choice -->
  6. <input type="button" value="Stemmen" name="poll_post" />
  7. </form>


Zo zou ik het doen
Offline robmoorman - 14/05/2005 12:42
Avatar van robmoorman PHP interesse hm werkt niet, ook al geprobeerd
Offline Thomas - 14/05/2005 14:12 (laatste wijziging 14/05/2005 14:22)
Avatar van Thomas Moderator Probeer het zo eens:

  1. function check(form, field) {
  2. var i = 0;
  3. var checked = false;
  4. while(i < form.elements[field].length && !checked) {
  5. checked = form.elements[field][i].checked;
  6. i++;
  7. }
  8. if(!checked) {
  9. window.alert("Please choose an option.");
  10. }
  11. return checked;
  12. }


EDIT: Het radiobutton-veld is dus een array (let op regel 5), waarin alle buttons met dezelfde naam voorkomen. Dit is men in bovenstaande scripts even vergeten .
Offline robmoorman - 14/05/2005 15:04
Avatar van robmoorman PHP interesse dat werkt na aanpassing,. ontzettend bedankt:ooh:
Gesponsorde links
Dit onderwerp is gesloten.
Actieve forumberichten
© 2002-2024 Sitemasters.be - Regels - Laadtijd: 0.222s