jqGrid: передать выбранные идентификаторы как параметры формы HTML - PullRequest
1 голос
/ 20 октября 2011

У меня есть HTML-форма (Razor) с jqGrid для выбора сущностей (например, предположим, что клиенты). Для клиентов jqGrid выглядит так:

jQuery("#ajaxGrid").jqGrid({
    url: '@Url.Action("CustomersData")',
    datatype: 'json',
    mtype: 'GET',
    jsonReader: { repeatitems: false, id: "Id" },
    colNames: ['Id', 'Name'],
    colModel: [
        { name: 'Id', editable: true, sortable: false, hidden: false },
        { name: 'Name', editable: true, sortable: false, hidden: false }
    ],
    multiselect: true,
    viewrecords: true,
    rowNum: 5,
    width: '850',
    height: '15em'
});

Итак, сетка допускает множественный выбор.

Вопрос в том, как передать выбранные идентификаторы клиентов (как IEnumerable) контроллеру при отправке (соответствующему действию отправки)?

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

var ids = jQuery("#ajaxGrid").getGridParam('selarrrow');

в HTML-форме скрытое значение.

1 Ответ

2 голосов
/ 20 октября 2011

Если я правильно вас понял, вы можете, например, создать строку с разделенными запятыми идентификаторами выбранных строк относительно ids.join(','). Затем вы можете использовать jQuery.val(newValue) для установки нового свечения в скрытое поле: $("#hiddenFieldId").val(ids.join(','));.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...