Как получить выбранные значения флажка в контроллере из коллекции форм?

Я передаю объект коллекции форм одному из моих контроллеров через ajax, как это.

var formCollection = $(':input');
    $.ajax({
                url: url,
                type: 'POST',
                cache: false,
                async: true,
                data: formCollection,
                success: function (result) {
                    // debugger
                    if (result.status == true)
                        document.getElementById('Iframe211').src = "ActivationModal.aspx"

                }
            })

и в контроллере я получаю такие значения.

[HttpPost]
    public ActionResult Assign(FormCollection form)
    {
       var ch = form.GetValues("Prints");

        }

Здесь prints — это имя поля флажка, которое определено в веб-сетке,

Проблема здесь в переменной ch. Я не получаю значения флажка, который выбран, я получаю все значения флажка в массиве независимо от того, выбран он или нет.

Как я могу получить только те значения флажка, которые выбраны?

Спасибо


person vikash bhartia    schedule 11.07.2013    source источник
comment
это потому, что вы передаете formCollection, который не указывает, установлен ли флажок или нет. Я думаю, ты хочешь var formCollection = $('input:checked')   -  person James    schedule 11.07.2013
comment
Но тогда он будет передавать другие значения внутри формы, такие как скрытое поле или раскрывающееся значение.   -  person vikash bhartia    schedule 11.07.2013
comment
Мне нужно передать все элементы управления формой и значения флажков, которые отмечены   -  person vikash bhartia    schedule 11.07.2013


Ответы (1)


Вы можете изменить свой селектор следующим образом

var formCollection = $(':input:not(:checkbox), input:checked');

Это получит все элементы управления, которые не являются флажками, а затем все отмеченные флажки.

person U.P    schedule 11.07.2013
comment
Привет Спасибо за ваш ответ!! - person vikash bhartia; 11.07.2013