Bonjour je suis débutant en développement web et je sèche sur un problème.

Ma JSP affiche un tableau semblable à celui-ci (plusieurs lettres et plusieurs nombres) :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
A       1        [checkbox]           
        7        [checkbox]
        6        [checkbox]
B       8        [checkbox]
        21       [checkbox]
C       74       [checkbox]
        85       [checkbox]
etc...
[bouton Supprimer]
Je voudrais pouvoir supprimer plusieurs nombres du tableau en même temps.

Ici disons que les classes sont Lettre et Nombre.
Chaque Lettre a un attribut Vector<Nombre> qui contient les Nombres qui lui sont associés.
Le nom commun des checkboxes est nombres[].
Leurs valeurs sont celles des Nombres du tableau.
Je les récupère dans la Servlet avec String nombres[]= request.getParameterValues("nombres[]");
Donc nombres[] peut contenir des valeurs de lettres différentes (par exemple : 1 et 85)

Ce que j'ai déjà fait :
J'ai mis un input type="hidden" après chaque lettre.
Le nom commun est lettres[].
Leurs valeurs sont celles des Lettres du tableau.
Je les récupère dans la Servlet avec String lettres[]= request.getParameterValues("lettres[]");

Le problème, c'est que ça récupère toutes les lettres du tableau, et pas seulement celles dont un nombre a été coché.
La suppression fonctionne mais la boucle parcourt le Vector<Nombre> de chaque lettre, et pas seulement celles dont un nombre a été coché.
Donc si les listes de lettres/nombres sont très grandes, ce n'est pas du tout optimal.

Ce que je voudrais :
Une variable avec juste les lettres concernées (stockées soit dans String lettres[], soit dans un Vector<Lettre> )

Une idée après mes recherches :
J'ai trouvé ce code sur CommentCaMarche, qui sert à afficher un message si un certain nombre de checkboxes sont cochées.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
 
<html>
<head>
	<title>Untitled</title>
	<script>
        function checkSelect(elmId){
          maxOptionsSelect = 7;
          form = document.all("detailform");
          inputs = form.getElementsByTagName("input");
          count = 0;
          for(i=0 ; i<inputs.length ; i++){
            if(inputs[i].type=="checkbox" && inputs[i].checked==true){
                  count++;
                }
          }
          
          if(count > maxOptionsSelect){
                document.all(elmId).checked=false;
                alert("Vous ne pouvez sélectionner que maximum " + maxOptionsSelect + " options");
                return false;
          }
          return false;
        }
        </script>
</head>
 
<body>
 
<form name="detailform">
	  <input type="checkbox" onclick="javascript:checkSelect(this.id);" id="cb_1"/>a<br/>
	  <input type="checkbox" onclick="javascript:checkSelect(this.id);" id="cb_2"/>b<br/>
	  <input type="checkbox" onclick="javascript:checkSelect(this.id);" id="cb_3"/>c<br/>
	  <input type="checkbox" onclick="javascript:checkSelect(this.id);" id="cb_4"/>d<br/>
	  <input type="checkbox" onclick="javascript:checkSelect(this.id);" id="cb_5"/>e<br/>
	  <input type="checkbox" onclick="javascript:checkSelect(this.id);" id="cb_6"/>f<br/>
	  <input type="checkbox" onclick="javascript:checkSelect(this.id);" id="cb_7"/>g<br/>
	  <input type="checkbox" onclick="javascript:checkSelect(this.id);" id="cb_8"/>h<br/>
	  <input type="checkbox" onclick="javascript:checkSelect(this.id);" id="cb_9"/>i<br/>
	  <input type="checkbox" onclick="javascript:checkSelect(this.id);" id="cb_10"/>j<br/>
	  <input type="checkbox" onclick="javascript:checkSelect(this.id);" id="cb_11"/>k<br/>
	  <input type="checkbox" onclick="javascript:checkSelect(this.id);" id="cb_12"/>l<br/>
	  <input type="checkbox" onclick="javascript:checkSelect(this.id);" id="cb_13"/>m<br/>	  	  	  		  	  	  	  	  	  
</form>
 
</body>
</html>
(Pour tester le code vous pouvez le copier-coller là -> http://www.w3schools.com/tags/tryit....tml_image_test )
Ce que j'ai pensé à faire, c'est d'ajouter à toutes mes checkboxes un attribut id="la lettre concernée".
Puis la fonction JavaScript ajouterait la lettre seulement si une de ses checkboxes est cochée, et ne l'ajouterait qu'une fois.

Le souci :
- Je n'ai jamais fait de JavaScript, je ne sais pas s'il peut manipuler mon lettres[] (ou mon Vector<Lettre> )
- petit détail, comment faire en sorte de ne pas ajouter la lettre si la checkbox est cochée puis décochée juste après ?

Merci d'avance pour vos idées =) !
(et aussi si vous avez un titre plus explicite à me proposer)