Bonjour tout le monde,
dans ma page, j'ai 2 checkboxlist qui ont le même nombre de cases.
Je veux que lorsqu'un utilisateur coche une case de la première checkboxlist, la case qui lui correspond dans la 2ème soit cochée. Avez-vous une idée ?
Version imprimable
Bonjour tout le monde,
dans ma page, j'ai 2 checkboxlist qui ont le même nombre de cases.
Je veux que lorsqu'un utilisateur coche une case de la première checkboxlist, la case qui lui correspond dans la 2ème soit cochée. Avez-vous une idée ?
Bonjour,
Si tu entends "correspond" par qui ont le meme index, tu peux faire :
Il faut au préalable active l'autopostback sur ton CheckBoxList1.Code:
1
2
3
4
5
6 Protected Sub CheckBoxList1_SelectedIndexChanged(ByVal sender As Object, ByVal e As System.EventArgs) Handles CheckBoxList1.SelectedIndexChanged Dim i As Integer = 0 For i = 0 To CheckBoxList1.Items.Count - 1 CheckBoxList2.Items(i).Selected = CheckBoxList1.Items(i).Selected Next End Sub
J'espere avoir répondu a ta question.
bonne journée
kenavo
Bonjour,
merci bien pour ta réponse, j'ai pensé à cette solution mais je veux que l'évenement s'excute chez le client au lieu de faire des aller retour au serveur.
Ok, tu aurais du poser cette question dans un forum de javascript mais bon...
voici ce que tu peux faire : (coté serveur, dans le load de ta page par exemple)
coté client :Citation:
CheckBoxList1.Attributes.Add("OnClick", "OncheckBox('" & CheckBoxList1.ClientID & "', '" & CheckBoxList2.ClientID & "')")
Je ne suis pas un pro de javascript mais bon ca marche chez moi.Citation:
<script language="javascript" type="text/javascript">
function OncheckBox(id1, id2)
{
var chkbx1 = document.getElementById(id1);
var chkbx2= document.getElementById(id2);
if (chkbx1 && chkbx2) {
var lstbx1 = chkbx1.getElementsByTagName('Input');
var lstbx2 = chkbx2.getElementsByTagName('Input');
}
for (i = 0; i < lstbx1.length ; i++)
{
lstbx2[i].checked = lstbx1[i].checked;
}
}
</script>
voila, bon courage
kenavo
Meric bcp pour ton aide.
j'ai juste rajouté un petit teste pour qu'il me décoche pas le cases cohées par défaut dans la 2ème liste.
MerciCode:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17 function OncheckBox(id1, id2) { var chkbx1 = document.getElementById(id1); var chkbx2= document.getElementById(id2); if (chkbx1 && chkbx2) { var lstbx1 = chkbx1.getElementsByTagName('Input'); var lstbx2 = chkbx2.getElementsByTagName('Input'); } for (i = 0; i < lstbx1.length ; i++) { if(lstbx1[i].checked) { lstbx2[i].checked = lstbx1[i].checked; } } }