Так как я не знаю вашу модель представления и html-разметку, приведенный ниже код предназначен для вашей справки:
Model:
public class MyViewModel
{
public List<Item> CBC { get; set; }
}
public class Item
{
public int Id { get; set; }
public string Name { get; set; }
public bool Selected { get; set; }
}
Html-разметка:
<form asp-action="GetValue" asp-controller="Home" method="post">
<input class="form-control" type="checkbox" id="cbSelectAll"
onclick='selectAllCompta()' />
<h4 id="txtCb">Sélectionner tout</h4>
<ul>
@for (var i = 0; i < Model.CBC.Count; i++)
{
<li>
<input type="checkbox" asp-for="@Model.CBC[i].Selected" />
<label asp-for="@Model.CBC[i].Selected">@Model.CBC[i].Name</label>
<input type="hidden" asp-for="@Model.CBC[i].Id" />
<input type="hidden" asp-for="@Model.CBC[i].Name" />
</li>
}
</ul>
<button type="submit" name="submit">submit</button>
</form>
@section Scripts {
<script>
function selectAllCompta() {
if ($("#cbSelectAll").is(":checked")) {
$("ul input[type='checkbox']").prop('checked', true);
$("#txtCb").val("Déselectionner tout");
}
else {
$("ul input[type='checkbox']").prop('checked', false);
$("#txtCb").val("Sélectionner tout");
}
}
</script>
}
Чтобы после публикации на стороне сервера с помощью кнопки отправки вы получили значение:
public IActionResult GetValue(MyViewModel myViewModel) {
....
}