2010-06-08 3 views
0

MVC에서 시작하기 때문에 쉽게 대답 할 수 있습니다. ASP.Net에 MVC 2를 사용하고 있습니다. 변경 사항이있을 때 그리드가 변경되어야하는 드롭 다운 목록이 있습니다. 변경 선택 이벤트를 catch하고 아래 코드를 사용하여 전체 양식을 새로 고치는 방법을 발견했습니다. $ ('# TheForm'). submit(); 명령은 컨트롤러의 Index 메서드를 실행하고 이전처럼 모든 것을 다시 설정합니다. 물론이 메서드는 드롭 다운 목록의 새 값을 선택하여 그에 따라 뷰에서 새 데이터를 추출하고 표시합니다. 어떻게해야하나요? 아니면 클라이언트 측에서 더해야합니까?ASP.Net MVC 2 - 그리드를 제어하는 ​​드롭 다운 목록

$ (함수() { $ ("# StatusId") 변경 (함수() { $ ('#의 TheForm') (제출).. }); });

<p> 
    <% using (Html.BeginForm("Index", "Home", FormMethod.Post, new { id = "TheForm" })){%> 
     <%: Html.DropDownList("StatusId", (SelectList) ViewData["Status"]) %> 
    <%}%> 
</p> 

<p> 
    <% if (Request.IsAuthenticated) { %> 
    <%: Html.ActionLink("Add new item", "Add") %> 
    <% } %> 
</p> 

<table> 
    <tr> 

     <th> 
      Title 
     </th> 

     <th> 
      Date 
     </th> 
     <th> 
      Status 
     </th> 
    </tr> 

<% foreach (var item in Model) { %> 

    <tr> 


     <td> 
      <%: Html.ActionLink(item.Title, "Details", new { id = item.ItemCode }) %> 
     </td> 

     <td> 
      <%: String.Format("{0:g}", item.DateCreated) %> 
     </td> 
     <td> 
      <%: item.Status %> 
     </td> 
    </tr> 

<% } %> 

</table> 

    <p> 
    <%: Html.Label("Page: ") %> 

    <% for (int i = 1; i < Convert.ToInt32(ViewData["NumberOfPages"]); i++) 
     { %> 

    <%: Html.ActionLink(i.ToString(), "Index", new { page = i })%> 

    <% } %> 

    </p> 

답변

1

색인 작업을 는 매개 변수 StatusId이 필요합니다.

StatusId로 항목 목록을 필터링해야합니다. 그래도 작동하지 않으면 조치 코드를 게시하십시오.

+0

스폿이 켜져 있습니다. 대답은 아주 간단했지만 결국 배워야했습니다. – arame3333