我是 MVC 新手,参与了一个使用 ASP.NET MVC 1.0 开发的项目。我的 JavaScript 也很弱:-(
我试图演示主详细信息视图如何在 Northwind 数据库中的“订单”和“订单详细信息”表上工作。 (因此:表之间存在关系,即一个订单可以有多个订单详细信息)
我创建了两个控件(第一个用于订单,第二个用于订单详细信息)。我将订单表中的所有订单显示到列表视图中。一旦我点击其中一个订单,我就会进入该订单的详细信息视图。
我想要做的(但失败了)是在订单的“详细信息”视图下方创建一个子视图,该视图包含该订单的所有订单详细信息。
我还想根据主视图中的选择更改子视图的内容。我读了很多关于使用 AJAX 和 JSON 来动态更改它的内容,但我也未能做到这一点:'(
任何人都可以提供帮助并为我提供如何实现它的技术和代码吗?
您可以使用 MVC 和 jQuery 相当轻松地完成此操作。
首先在你的Orders\List.aspx
view:
<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
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)