Avec le développement des applications web, JavaScript est devenu l'une des connaissances nécessaires aux ingénieurs front-end. La case à cocher est l'un des contrôles Web courants et JavaScript peut être utilisé pour contrôler l'interaction des cases à cocher. Cet article explique comment utiliser JavaScript pour contrôler la case à cocher. Une fois que seuls deux éléments peuvent être sélectionnés, les options restantes ne peuvent pas être sélectionnées.
1. Bases du HTML
Avant d'utiliser JavaScript pour contrôler les cases à cocher, nous devons d'abord comprendre la syntaxe de base des cases à cocher en HTML. Les cases à cocher en HTML sont implémentées à l'aide de la balise . La définition de l'attribut type sur "checkbox" crée une case à cocher. Par exemple :
<input type="checkbox" name="option1" value="1">
Le code ci-dessus créera une case à cocher nommée "option1" avec une valeur de 1. Grâce à l'attribut name, nous pouvons trouver cette case à cocher dans le code JavaScript suivant, et grâce à l'attribut value, nous pouvons obtenir ou définir l'état sélectionné de la case à cocher.
2. Implémentation de JavaScript
Maintenant, nous commençons à expliquer comment utiliser JavaScript pour contrôler la case à cocher. L'idée principale est que lorsqu'une case est cochée, les cases non cochées restantes sont désactivées. Nous pouvons utiliser la méthode addEventListener() pour ajouter un événement de clic à chaque case à cocher, puis implémenter la logique ci-dessus dans la fonction de rappel d'événement.
Ce qui suit est le code d'implémentation spécifique :
// 获取所有复选框元素 var checkboxes = document.querySelectorAll("input[type='checkbox']"); // 选择次数计数器,初始化为0 var checkedCount = 0; // 遍历所有复选框,为它们添加点击事件 for (var i = 0; i < checkboxes.length; i++) { checkboxes[i].addEventListener("click", function() { if (this.checked) { // 如果当前复选框被选中,判断当前是否已选中两项 if (checkedCount >= 2) { // 已选中两项,禁用其余未选中的复选框 for (var j = 0; j < checkboxes.length; j++) { if (!checkboxes[j].checked) { checkboxes[j].disabled = true; } } } else { // 尚未选中两项,计数器+1 checkedCount++; } } else { // 如果当前复选框被取消选中,计数器-1,检查是否需要解除禁用 checkedCount--; if (checkedCount < 2) { for (var j = 0; j < checkboxes.length; j++) { checkboxes[j].disabled = false; } } } }); }
Dans le code ci-dessus, nous utilisons d'abord la méthode document.querySelectorAll() pour obtenir tous les éléments de case à cocher et définir un compteur checkCount pour enregistrer le nombre de cases à cocher sélectionnées. Ensuite, parcourez tous les éléments de case à cocher et ajoutez-y des événements de clic. Dans chaque fonction de rappel d'événement de clic, nous vérifions si la case actuelle est cochée. Si sélectionné, déterminez si le nombre d’éléments sélectionnés est égal à 2. S'il est inférieur à 2, alors +1 au compteur, sinon désactivez les cases non cochées restantes. Si la case n'est pas cochée, comptez -1 et vérifiez si elle doit être décochée.
3. Démonstration d'effet
Nous pouvons tester l'effet du code JavaScript ci-dessus dans une page HTML. Enregistrez le code ci-dessus en tant que fichier JavaScript, tel que checkbox.js, puis liez ce fichier JavaScript dans la page HTML :
<script src="checkbox.js"></script>
Ensuite, ajoutez plusieurs cases à cocher dans la page HTML, telles que : #🎜🎜 #
<input type="checkbox" name="option1" value="1">
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!