我有一个MVC局部视图。我尝试通过调用控制器名称和操作名称使用window.open加载它。我从动作获得了相关的部分视图,但是没有到样式表和脚本的链接,因为这是一个新窗口。我该如何解决这个问题?
这是我使用的javascript代码:
function OpenNewWindowForDetail(model) {
$.ajax({
url: '@Url.Action("ActionName", "ControllerName")',
dataType: 'html',
data: {
userid: model.UserId
},
type: 'POST',
success: function (data) {
var win = window.open('about:blank');
with (win.document) {
open();
write(data);
close();
}
}
});
}
顺便说一下,样式表文件和javascript文件的所有链接都在layout.cshtml中。
提前谢谢
答案 0 :(得分:2)
您应该使用布局将操作修改为常规视图,而不是部分视图。在这种情况下没有理由使用局部视图。
也没有理由使用AJAX。使用target='_blank'
的简单锚点就足够了。 userId可以通过GET参数传递。