2009-10-07 2 views
5

Я новичок в MVC, и я участвую в проекте, разработанном с помощью ASP.NET MVC 1.0. Я также слабый в JavaScript :-(Master-Detail View ASP.NET MVC

Я пытаюсь продемонстрировать, как представление «Мастер-детали» работает над «заказами» & «Таблицы заказа» из базы данных Northwind. (Следовательно: таблицы имеют отношение, т.е. , заказ может иметь несколько деталей заказа)

Я создал два элемента управления (1-й для ордеров, второй для OrderDetails). Я отобразил все заказы из таблицы ордеров в представление списка. Как только я нажму на один из заказов я должен просмотреть вид детали этого заказа.

Что я хочу сделать (& не удалось) является создание подвидного представления под представлением детали заказа, в котором указаны все детали заказа для th по заказу.

Я также хочу изменить содержимое дополнительного представления на основе выбора из главного представления. Я много читал об использовании AJAX & JSON динамически изменять это, но я не в состоянии сделать это тоже: '(

Любой человек может помочь в этом и предоставить мне код, как я могу реализовать метод &

+0

Проверить [это] (http://www.asp.net/Learn/mvc/tutorial-21-cs.aspx) out – RailRhoad

ответ

5
?

Вы можете сделать это довольно легко с помощью MVC и JQuery

Первого в вашем Orders\List.aspx зрения:.

<script> 
    // once the page has loaded 
    $(function() { 
     // set up your click event to load data 
     $('.list-item').click(function() { 
      // ajax load the content returned by the detail action 
      $('#detail').load('<%= Url.Action("Detail") %>', { id: this.id }); 
     }); 
    }); 
</script> 

<style> .list-item { cursor: pointer; } </style> 

<% // loop through the orders in your model and show them 
// as each div has the class list-item it will be give the click event 
foreach(var order in Model) { %> 
    <div id="<%= order.Id %>" class="list-item"><%= order.Name %></div> 
<% } %> 

<%-- the panel that the ajaxed content will be loaded into --%> 
<div id="detail"></div> 

Затем в частичном виде Orders\Detail.ascx:

Id: <%= Model.Id %><br /> 
Name: <%= Model.Name %><br /> 
Description: <%= Model.Description %><br /> 
etc