Question

Je dois écrire un script Java. Ceci est censé valider si la case à cocher est activée ou non dans la page. Le problème ici est que la case à cocher est dans une grille et est générée dynamiquement. La raison en est que le nombre de cases à cocher devant être restituées n’est pas connu au moment de la conception. Donc, l'identifiant est connu uniquement côté serveur.

Était-ce utile?

La solution

Voici une pensée:

Comme indiqué par Anonymous, vous pouvez générer du javascript. Si vous êtes dans ASP.NET, vous avez de l’aide avec la méthode RegisterClientScriptBlock (). MSDN dans l'injection de script côté client

Vous pouvez également écrire ou générer une fonction javascript qui prend une case à cocher en tant que paramètre et ajouter un attribut onClick à votre définition de case à cocher qui appelle votre fonction et se transmet comme paramètre

.
function TrackMyCheckbox(ck)
{
     //keep track of state
}

<input type="checkbox" onClick="TrackMyCheckbox(this);".... />

Autres conseils

Vous devez également générer votre javascript, ou au moins une structure de données javascript (array) contenant les cases à cocher à contrôler.

Vous pouvez également créer un élément contenant et cocher la case js avec chaque élément d'entrée enfant de type.

Si c'est votre seule case à cocher, vous pouvez effectuer un appel à getElementsByTagName () pour obtenir toutes les entrées, puis parcourir le tableau renvoyé à la recherche de la valeur de type appropriée (par exemple, la case à cocher).

Il n’ya pas beaucoup de détails dans la question. Mais en supposant que la grille HTML soit générée côté serveur (pas en javascript).

Ajoutez ensuite les classes aux cases à cocher que vous voulez vous assurer. Et parcourez le DOM à la recherche de toutes les cases à cocher avec cette classe. Dans jQuery :

HTML:

<html>
...

<div id="grid">
   <input type="checkbox"  id="checkbox1" class="must-be-checked" />
   <input type="checkbox"  id="checkbox2" class="not-validated" />
   <input type="checkbox"  id="checkbox3" class="must-be-checked" />
   ...      
   <input type="checkbox"  id="checkboxN" class="must-be-checked" />
</div>

...
</html>

Javascript:

<script type="text/javascript">

  // This will show an alert if any checkboxes with the class 'must-be-checked'
  // are not checked.
  // Checkboxes with any other class (or no class) are ignored
  if ($('#grid .must-be-checked:not(:checked)').length > 0) {
    alert('some checkboxes not checked!');
  }

</script>
Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top