Ho un modulo HTML con una serie di caselle, come rendere l'utente può controllare solo un numero fisso di loroLimit controllato casella in una forma
risposta
Questo esempio conta il numero di ingressi controllati dopo ogni sia selezionata e confrontare con il numero massimo consentito. Se viene superato il limite massimo, le caselle di controllo rimanenti sono disabilitate.
jQuery(function(){
var max = 3;
var checkboxes = $('input[type="checkbox"]');
checkboxes.change(function(){
var current = checkboxes.filter(':checked').length;
checkboxes.filter(':not(:checked)').prop('disabled', current >= max);
});
});
Ecco un esempio di lavoro - http://jsfiddle.net/jaredhoyt/Ghtbu/1/
è piaciuto! ben fatto – sha256
funziona bene :) .. mi chiedo solo: quando sostituisco "jQuery" con "$" perché non funziona? –
Avete altre librerie caricate che usano l'oggetto '$' come prototipo? 'jQuery' dovrebbe essere sinonimo di' $ 'e short-hand per' $ (document) .ready() '. – jaredhoyt
Questo associa ad ogni casella un po 'di logica che controlla per vedere quante caselle di controllo sono selezionate nel modulo corrente. Se quel numero è uguale a 2, disabilitiamo tutte le altre caselle.
$("form").on("click", ":checkbox", function(event){
$(":checkbox:not(:checked)", this.form).prop("disabled", function(){
return $(this.form).find(":checkbox:checked").length == 2;
});
});
Questo funziona su una base per modulo, nel senso che è possibile avere più moduli che non tocchino gli input reciproci. Nella demo qui sotto espongo tre moduli, che contengono tre caselle di controllo. La restrizione di 2 caselle di controllo è limitata alle rispettive forme.
Dimostrazione: http://jsbin.com/epanex/4/edit
- 1. Attributo casella di controllo selenio "controllato"
- 2. casella di controllo Disattiva dopo controllato, Android
- 3. Casella 'Controllato' in ListView viene ripristinata dopo lo scorrimento
- 4. trovare tutte casella di controllo non controllato in jQuery
- 5. jQuery casella 1.9 non controllato seconda volta dopo volta deselezionata
- 6. L'ombra della casella CSS attorno a una forma personalizzata?
- 7. Una casella di controllo disabile può ancora essere controllato in C#
- 8. Utilizzo dell'istruzione LIMIT in una query SQLite
- 9. DataGridView con una casella di controllo con il valore di default controllato
- 10. : class pseudo controllato non funziona in Chrome
- 11. come serializzare la casella di controllo in una forma in dati JSON
- 12. Creare una forma in C++
- 13. rotaie Nils in una forma
- 14. Chiusura di una forma da un'altra forma?
- 15. Android Forma all'interno di una forma
- 16. In HTML5, posso creare una casella di testo di forma irregolare?
- 17. casella di controllo Convalida non mappata a un'entità in una forma Symfony2
- 18. Radio Button Controllato non controllare
- 19. rettangolo forma drawable non verrà visualizzato come casella elemento selettore
- 20. Limit groupBy in Java 8
- 21. LIMIT non funziona in ActiveDataProvider
- 22. Mostrando una forma nascosta
- 23. Ha senso utilizzare "LIMIT 1" in una query "SELECT 1 ..."?
- 24. SQL LIMIT non restituisce risultati dove nessun LIMIT restituisce risultati
- 25. Controllato eccezioni unchecked
- 26. COUNT MySQL con LIMIT
- 27. Memoria VM Limit Python
- 28. prestazioni di Stream.sorted(). Limit()
- 29. query Sqlite LIMIT/OFFSET
- 30. F # Controllato Arithmetics Scope
Possiamo vedere il codice HTML? Sei interessato a limitare il conteggio totale o limitarlo a un determinato gruppo? Come possono controllare due dei tre, o c'è qualche altro tipo di restrizione? – Sampson
Voglio limitare il conteggio totale ... l'html è solo un modulo con alcune caselle di controllo e un pulsante di invio –