Wie kann ich die Anzahl der radio-Boxen ausgewählt und zu validieren?

So, hier ist, was mein code tut:

zeigt es 10 Gruppen von radio-buttons, mit jeweils 2 Optionen. (so 20 radio-buttons insgesamt). Die 10 sets alle unterschiedliche Namen haben, aber in der gleichen form. Eine person kann wählen Sie nur 5 Tasten aus dem 10. Ich habe ein Stück code, der deaktiviert die radio-buttons einmal 5 ausgewählt sind. Jetzt möchte ich verhindern, dass Menschen aus dem Absenden des Formulars, wenn Sie 4 oder weniger-Tasten ausgewählt werden.

Hier ist ein Beispiel für den code:

HTML:

 <form method="post" action="index.php" name="buttons" onsubmit="return Validation()">
 <input type="radio" id="button" value="first_button" name="1" />
 <input type="radio" id="button" value="second_button" name="1" />
 <input type="radio" id="button" value="first_button" name="2" />
 <input type="radio" id="button" value="second_button" name="2" />
 <input type="radio" id="button" value="first_button" name="3" />
 <input type="radio" id="button" value="second_button" name="3" />
 <input type="radio" id="button" value="first_button" name="4" />
 <input type="radio" id="button" value="second_button" name="4" />
 <input type="radio" id="button" value="first_button" name="5" />
 <input type="radio" id="button" value="second_button" name="5" />
 <input type="radio" id="button" value="first_button" name="6" />
 <input type="radio" id="button" value="second_button" name="6" />
 <input type="radio" id="button" value="first_button" name="7" />
 <input type="radio" id="button" value="second_button" name="7" />
 <input type="radio" id="button" value="first_button" name="8" />
 <input type="radio" id="button" value="second_button" name="9" />
 <input type="radio" id="button" value="first_button" name="9" />
 <input type="radio" id="button" value="second_button" name="9" />
 <input type="radio" id="button" value="first_button" name="10" />
 <input type="radio" id="button" value="second_button" name="10" />
 </form>

JAVASCRIPT

 function Validation()
 {
 var bol2 = $("input:radio:checked").length;
 if (bol2<=4)
   {
   alert("Please select 5 buttons");
   return false;
   }
 }

Den code jetzt funktioniert. Danke @Climbage, ich schaute auf anderen code und herausgefunden, was zu tun

  • Sie können nicht die gleiche id für alle von Ihnen. Id-Attributen müssen eindeutig sein, um jede Seite.
  • So warten Sie bereits code, der deaktiviert die Schaltflächen bei 5 ausgewählt sind? Kann Sie wieder verwenden?
  • Mit jQuery ist das eine option?
  • für jede Taste, fügen Sie eine onclick= {counter++} - Methode, und verwenden Sie die Zählung zu überprüfen
  • Dies bedeutet nicht, dass die OP will
  • versuchen Sie dies, wenn Sie annehmen, jQuery $('form input[type=radio]:checked') oder $('form input[type=radio]:checked').val();. Dies muss wieder die Anzahl der markierten radio-Eingänge. Sorry, keine Zeit für die Prüfung selbst.
  • Ja, jQuery ist eine option.
  • deaktiviert die Tasten. Ich will nur etwas, das nicht lassen Sie Sie Einreichen, es sei denn, Sie haben mindestens 5 Tasten überprüft
  • Ich habe versucht, und es gibt den Wert des ersten radio-button aktiviert, nicht die Zählung, und es nicht zeigen alle überprüft radios.
  • ja... aber... wie sind Sie zu zählen, um zu überprüfen, dass 5 ausgewählt sind?
  • Dieser code kommt direkt nach der form. <script> $(\"input:radio\").klicken Sie auf(function() { var bol = $(\"input:radio:checked\").Länge >= 5; $(\"input:radio\").nicht (\"aktiviert\").attr(\"disabled\",bol); }); </script>
  • Es war eine gute Idee, einen Blick auf die anderen code. Ich habe herausgefunden, was zu tun ist. Ersetzt habe ich den obigen code mit dem funktionierenden code
  • finden Sie unter den code und verwenden Sie es, jsfiddle.net/HzfKq/65

InformationsquelleAutor user1470755 | 2012-07-13
Schreibe einen Kommentar