我有一个带有Action方法的控制器,每个方法返回一些应该以模态方式呈现的视图。现在我使用"blockUI"与"IFrame"在它。但我有一些感觉,这不是最好的方法。
在asp mvc模式显示视图的最佳实践是什么?
这是我目前的解决方案:
function showViewModally() {
$.blockUI({ message: $('<div id="divAI">
<div><div><span>Modal View</span></div></div>
<iframe id="ifAI" scrolling="no" height="100%" width="100%" src="../Area/Controller/ActionMethod" frameborder="0">
</iframe></div>'),
css: { border: "3px solid #3697b3",
width: '500px',
height: '400px',
left: ($(window).width() - 500) / 2 + 'px',
top: '10px'
}
});
}
在asp mvc模式显示视图的最佳实践是什么?
最好的概念是非常主观的,我不喜欢它。在web应用程序中显示模态部分视图的另一种方法是使用jQuery UI对话框。因此,您可以使用AJAX请求,而不是使用iframe,并将结果显示在模态对话框中。
例如:$('<div/>').dialog({
modal: true,
open: function () {
var url = '@Url.Action("ActionMethod", "Controller", new { area = "Area" })';
$(this).load(url);
}
});
这里有一个现场演示