2008-11-15 7 views
13

현재 많은 블로그 게시물에서 발견 된 전략을 사용하고 있습니다. 기본적으로 URL에 페이지 번호가 들어 있습니다 (예 :/사용자/목록/5는 페이지 된 사용자 목록의 5 페이지에 사용자를 제공합니다). 그러나 한 페이지에서 두 개의 별도 페이지 목록을 나열해야하는 상황에 직면하고 있지 않습니다. ASP.NET MVC를 사용하여이 작업을 수행하려면 어떻게해야합니까? 두 개의 URL 매개 변수 (예 :/Users/List? page1 = 1 & page2 = 2)를 입력하기 만하면됩니까? 부분 뷰를 사용하면 더 좋은 방법이 있을까요? 단지 잠깐ASP.NET MVC에서 페이징을 어떻게 구현합니까?

답변

10

무시 노선, 당신은 쿼리 문자열 매개 변수로 URL에있는 2 개의 다른 페이지의 상태를 유지하는 것입니다.

mysite.com/foo?list1page=2 & list2page =

8 그런 다음 그에 따라 데이터/호출기를 구축 할 수 있습니다. 호출기 링크는 URL을 업데이트합니다.

당신은 경로가 더 친화적 인 URL을 생성 할 창조적 얻을 수 있습니다,하지만 난 쿼리 문자열 PARAMS 여기에 완벽하게 허용 생각합니다. 당신은 쿼리 매개 변수를 사용하는 경우

+1

여러 검색 매개 변수도 따라야하는 경우에는 어떻게해야합니까? –

+0

이것은 약간 더 복잡해집니다. 아마도 일부 상황에서 도우미를 데리고 적절한 URL을 생성하려고 할 것입니다. –

2

각 목록에서 페이지 링크에서 주문을 모두 매개 변수를 전달하기 위해 서로에 대해 알아야합니다.

두 목록은 서로 독립적 인 경우 개별적으로 JQuery와에게 & 아약스를 사용하여 업데이트 할 수 있습니다. 각 목록을 부분보기로 자신의 div에 배치하기 만하면됩니다.

<div id="list1"><%= Html.RenderPartial ("ListA") %></div> 
<div id="list2"><%= Html.RenderPartial ("ListB") %></div> 

조회 목록을 업데이트 할 수있는 쉬운 방법에 대한 jQuery를 양식 플러그인에서 ajaxSubmit.

1

PagedList.Mvc이 플러그인을 사용하기 정말 쉽게, 너무 Nuget를 통해 사용할 수 있습니다.

관련 문제