我的单视图页面上有多个部分视图。部分视图动态加载。而且我希望部分视图按 1 加载。可以这样做吗?
问问题
3062 次
2 回答
4
在您的视图中,保留三个 Div 并在某些属性中分配 Url 详细信息,如下所示。
示例 HTML
<div id="Div1" attr-Url="@Url.Action("ActionName", "ControllerName",
new { area = "Area Name" })">
</div>
<div id="Div2" attr-Url="@Url.Action("ActionName", "ControllerName",
new { area = "Area Name" })">
</div>
<div id="Div3" attr-Url="@Url.Action("ActionName", "ControllerName",
new { area = "Area Name" })">
</div>
现在,您可以使用 Load Event 的 Success CallBack。
jQuery
$(document).ready(function () {
var url = $('Div1').attr('attr-Url');
$('Div1').load(url, function () {
//Success callback
url = $('Div2').attr('attr-Url2');
$('Div2').load(url, function () {
//Success callback
url = $('Div3').attr('attr-Url3');
$('Div3').load(url, function () {
//Success callback
});
});
});
});
如果你注意到上面的代码。成功加载第一个局部视图后,第二个局部视图开始加载,然后依次加载第三个。
希望对你有帮助...
于 2013-04-03T16:32:58.467 回答
1
这种方法可能对您有用:
它使用 jquery 和.load()
, 来调用将您的部分视图呈现为 html 并将其返回到 javascript 的操作,您稍后可以将其放置在您想要的任何位置。
更新:
如果你想按顺序加载,一个接一个,你可以使用jquery的load()的完整回调一个接一个地链接。
如果您想让它们在特定时间或间隔加载,您可以使用 javascript 的setTimeout
于 2013-04-03T13:34:32.160 回答