2015-08-11 1 views
0

J'utilise le modèle Amazon Mechanical Turk pour créer une enquête (HIT) et souhaite que les questions d'enquête soient requises. J'ai trois groupes de boutons radio dans le modèle d'enquête que je voudrais avoir tous remplis avant que le formulaire soit soumis. J'ai besoin d'aide pour la syntaxe de validation.Validation de l'entrée d'enquête sur Mechanical Turk

est ici un groupe de mes boutons radio:

<div class="radio"><label><strong><input name="ABCD Test" type="radio" value="1" /></strong>Yes</label></div> 
<div class="radio"><label><input name="ABCD Test" type="radio" value="2" />No</label></div> 
<div class="radio"><label><input name="ABCD Test" type="radio" value="3" />Not sure</label></div> 

Je trouve le code ci-dessous en cas de débordement de la pile, mais je me bats avec la syntaxe sur la façon de faire usage en ce qui concerne mes boutons radio spécifiques ci-dessus. Quelqu'un peut-il s'il vous plaît aider avec la syntaxe à

<script type='text/javascript'> 
window.onload = function() {document.getElementById('submitButton').setAttribute('onclick', 'return validateForm()'); } 



function validateForm() { 
if (validate) 
return true; 
else 
return false; 
} 
</script> 
+0

Peut quelqu'un s'il vous plaît aider avec la syntaxe pour le problème ci-dessus? – HumaniTech

Répondre

0

S'il vous plaît ajouter jQuery et exécuter, devrait fonctionner

//javascript //included jQuery 
 
function validateForm() { 
 
var vali = $('.radio').find(':checked').length>0; 
 
    if (vali) 
 
    return true; 
 
    else 
 
    return false; 
 
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
 

 
<form action="" onsubmit="return validateForm();" method="GET"> 
 
<div class="radio"><label><strong><input name="ABCD Test" type="radio" value="1" /></strong>Yes</label></div> 
 
<div class="radio"><label><input name="ABCD Test" type="radio" value="2" />No</label></div> 
 
<div class="radio"><label><input name="ABCD Test" type="radio" value="3" />Not sure</label></div> 
 
<input id=submitButton type=submit value="Submit"/> 
 
</form>

+0

cela n'a pas fonctionné. Il soumet toujours sans aucune entrée. – HumaniTech

0

Cela devrait faire ce que vous voulez:

<script> 
    function validateRadioButtons() 
    { 
     var radios = document.getElementsByName('ABCD Test') 

     for (var i = 0, length = radios.length; i < length; i++) { 
      if (radios[i].checked) { 
       alert(radios[i].value); 
       return true; 
      } 
     } 

     alert("You must check at least one of the radio buttons before submitting."); 
     return false; 
    } 
</script> 

<div class="radio"><label><strong><input name="ABCD Test" type="radio" value="1" /></strong>Yes</label></div> 
<div class="radio"><label><input name="ABCD Test" type="radio" value="2" />No</label></div> 
<div class="radio"><label><input name="ABCD Test" type="radio" value="3" />Not sure</label></div> 
<input type="submit" value="Submit" onClick="validateRadioButtons();" />