столбец jqgrid linq с ASP.NET MVC - PullRequest
       1

столбец jqgrid linq с ASP.NET MVC

2 голосов
/ 21 августа 2011

У меня есть класс (Person) с 4 свойствами: Id, FirstName, LastName, Code.

Я показываю список людей в jqgrid. Я бы хотел колонку ссылок в этом формате (код имеет этот формат 2011.0001)

/ Персона / Деталь / Код => /Person/Code/2011.0001

Но у меня есть это с кодом ниже: / Клиент / Detail? Code = 2

Я пробовал это:

colModel: [
    { name: 'Code', index: 'Code', formatter: 'showlink', formatoptions: { baseLinkUrl: '/Customer/Detail', idName: 'Code' }},
    { name: 'LastName', index: 'LastName', align: 'left' },
    { name: 'FirstName', index: 'FirstName', align: 'left' }                  
],

Как я могу это исправить?

Спасибо

Update1, формат данных

[
{"Id":1,"FirstName":"AAAA","LastName":"AA","Code":"2011.0001"},
{"Id":3,"FirstName":"BBBB","LastName":"BB","Code":"2011.0003"}
]

1 Ответ

1 голос
/ 21 августа 2011

Вы можете попробовать использовать пользовательский форматер в форме

formatter: function (cellvalue, options, rowObject) {
    return '<a href="/Person/Code/' + rowObject.Code + '">' + cellvalue + '</a>';
}

вместо предопределенный форматер 'showlink':

formatter: 'showlink', formatoptions: {baseLinkUrl:'/Customer/Detail', idName:'Code'}

Вы можете легко получить /Customer/Detail?Code=2011.0001, если у вас есть уникальные данные в столбце «Код» и если вы добавите key: true к определению столбца. В случае, если значение Id из ввода JSON будет проигнорировано, а значение из столбца «Код» будет использовано в качестве идентификатора строки. Если вам нужно иметь значение href в форме /Customer/Detail/Code/2011.0001 или вместо /Customer/Detail?Code=2011.0001, вам потребуется использовать пользовательский форматировщик, как я описывал ранее.

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