Вы можете использовать AJAX:
$(function() {
$(':checkbox').change(function() {
var form = $(this).closest('form');
$.ajax({
url: form.attr('action'),
type: form.attr('method'),
data: form.serialize(),
success: function(result) {
}
});
});
});
В этом примере мы подписываемся на событие изменения каждого флажка.Когда это событие инициируется, мы ищем содержащую форму и отправляем ее содержимое на сервер с помощью AJAX-запроса.
И если вы хотите отправить серверу только текущее состояние флажка, а не всю форму:
$(function() {
$(':checkbox').change(function() {
$.ajax({
url: '@Url.Action("SomeAction")',
type: 'POST',
data: { isChecked: $(this).is(':checked') },
success: function(result) {
}
});
});
});
где вы можете выполнить действие контроллера, которое выполнит необходимую обработку:
[HttpPost]
public ActionResult SomeAction(bool isChecked)
{
...
}