2011-08-21 2 views
2

ID, 성, 성, 코드의 4 가지 속성 (Person) 클래스가 있습니다.ASP.NET MVC가있는 jqgrid 열 linq

나는 사람 목록을 jqgrid에 보여줍니다. 나는 (코드는이 형식 2011.0001있다)이 형식의 링크를 열 싶습니다

/사람/세부/코드 => /Person/Code/2011.0001

하지만 아래의 코드와 함께이 있습니다 /고객/상세 = 나는이 시도

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' }     
], 

나는이 문제를 어떻게 해결할 수

?

감사합니다,

갱신 1, 데이터 형식

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

그리드를 채우는 데 사용하는 테스트 데이터를 게시 할 수 있습니까? 'Code'의 값은 유일합니까? 아마도 열이 그리드 행의 'id'로 사용될 수 있습니까? – Oleg

+0

update1을 참조하십시오. 코드는 고유합니다. 기술 ID가 있지만 컨트롤러에 코드 값을 제공하고 싶습니다. –

+0

URL을 '/ Person/Code/2011.0001' 형식으로해야하고 URL 매개 변수가있는'/ Person? Code = 2011.0001' 형식이 아닌 경우 사용자 정의 포매터를 사용해야합니다. 내 수정 된 답변을 참조하십시오. – Oleg

답변

1

당신은 predefined formatter 'showlink'의

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

대신 형태로 custom formatter를 사용하려고 할 수 있습니다

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

'코드'열에 고유 한 데이터가 있고 열 정의에 key: true을 추가하면 쉽게 /Customer/Detail?Code=2011.0001을받을 수 있습니다. 이 경우 JSON 입력의 Id 값이 무시되고 '코드'열의 값이 ROWID로 사용됩니다. href 값을 /Customer/Detail/Code/2011.0001 또는 /Customer/Detail?Code=2011.0001 대신 사용해야하는 경우 앞서 설명한대로 사용자 정의 포매터를 사용해야합니다.