Ich verwende eine CheckBoxList
, um eine Gruppe von Geschäftseinheiten anzuzeigen. Ich möchte die Auswahl auf maximal 5 Elemente beschränken und wenn der Benutzer den 6. Artikel auswählt, sollte ich einen Alarm anzeigen und den 6. ausgewählten Artikel abwählen.CheckBoxList - Auswahl auf eine bestimmte Nummer beschränken
Die Steuerung ist wie folgt:
<asp:CheckBoxList ID="ckBLBusinessUnits" onclick="loader(this.id);" runat="server" AutoPostBack="True" Visible="false" OnSelectedIndexChanged="ckBLBusinessUnits_SelectedIndexChanged"></asp:CheckBoxList>
JS Funktion i bin mit:
function loader(controlID) {
modal = document.getElementById('loadingImage');
modal.style.display = "block";
if (controlID == "ckBLBusinessUnits")
{
if (($('#ckBLBusinessUnits :checkbox:checked').length) > 5)
{
alert("Max 5 BU's can be selected");
//is it possible to uncheck here? I am unable to find any method to do so.
}
}
}
C# unten:
protected void ckBLBusinessUnits_SelectedIndexChanged(object sender, EventArgs e)
{
if (selectedValues.Count <= 5)
{
//Do something and then disable the loader.
loadingImage.Style.Add("display", "none");
}
else if (selectedValues.Count > 5)
{
//is it possible to uncheck here? I am unable to find any method to do so.
}
}