Normalement, les cases à cocher HTML sont regroupées en fonction du nom. Est-il possible de grouper une case autre que le nom?HTML Checkbox grouping
Merci!
Normalement, les cases à cocher HTML sont regroupées en fonction du nom. Est-il possible de grouper une case autre que le nom?HTML Checkbox grouping
Merci!
Pas en HTML. Mais vous pouvez écrire une logique de code du côté serveur qui les regroupe en fonction de certaines conditions, par ex. un préfixe ou un suffixe commun dans le nom du paramètre ou même la valeur du paramètre.
Cependant, ce n'est que maladroit. Profitez simplement du bénéfice HTML que vous avez donné avec la possibilité de les regrouper par leur nom. Si vous avez un problème avec cela, alors il doit être corrigé ailleurs, peut-être avec l'ID d'élément (pour indiquer l'unicité dans l'arborescence) ou la classe de style d'élément (pour indiquer une signification commune dans l'arborescence).
Si vous utilisez ASP.NET, vous pouvez utiliser MutuallyExclusiveCheckBoxExtender dans AjaxToolkit pour regrouper les cases à cocher. Il les regroupe de sorte qu'une seule case du groupe puisse être cochée à la fois, tout comme les groupes de radiobutton.
http://www.asp.net/ajax/tutorials/creating-mutually-exclusive-checkboxes-cs
Vous pouvez trier les éléments ajoutés dans votre chemin. Dans l'exemple suivant pour une ASP.Net CheckBoxList i utilisé un comparateur pour trier les articles décroissant (changer dans votre chemin):
Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
Dim allChk As New ArrayList(Me.CheckBoxList1.Items)
allChk.Sort(New SortComparer(False))
Me.CheckBoxList1.Items.Clear()
For Each item As ListItem In allChk
Me.CheckBoxList1.Items.Add(item)
Next
End Sub
Public Class SortComparer
Implements IComparer
Private ascending As Boolean
Public Sub New(ByVal asc As Boolean)
Me.ascending = asc
End Sub
Public Function [Compare](ByVal x As Object, ByVal y As Object) As Integer Implements IComparer.Compare
Return x.ToString.CompareTo(y.ToString) * DirectCast(IIf(Me.ascending, 1, -1), Int32)
End Function
End Class
sont indépendants de cases à cocher eachother, peut-être vous dire radios? alors non seulement le nom. – Galen
@Galen: case à cocher est à choix multiple, radiobutton est un choix unique. L'avantage d'avoir le même nom est que vous avez directement * toutes * sélectionné des valeurs dans un tableau du côté serveur en un seul appel. De cette façon, vous n'avez pas besoin de les saisir tous ensemble dans plusieurs appels, puis de les déterminer un par un s'ils sont remplis ou non (c'est-à-dire null/vide ou non). – BalusC
@balusC: je connais la différence. Je n'étais pas sûr que le demandeur savait à cause de sa question. En espérant qu'il clarifierait – Galen