ASP.NET MVC:如何关闭浏览器窗口而不是返回视图?

gho*_*_mv 3 c# browser asp.net-mvc

我有一个实例,不是我自己选择的,但我在浏览器中有一个辅助弹出窗口.在表单提交回服务器端MVC方法后,在此方法完成后,我希望它关闭调用它的浏览器窗口.

有没有办法做到这一点,除了在"onReady"中返回一个javascript视图,告诉它关闭?

Dar*_*rov 7

不,没有办法从服务器实现这一点而不使用javascript(或返回一个将执行此javascript的视图).


Mic*_*edy 5

把它放在你看来:

@if (ViewBag.ShouldClose) {
    <script type="text/javascript">
        window.close();
    </script>  
}
Run Code Online (Sandbox Code Playgroud)

然后,如果您设置ShouldClose属性,它将运行该脚本并应关闭窗口.

// in your controller
ViewBag.ShouldClose = true;
Run Code Online (Sandbox Code Playgroud)

注意:我是从编辑器中执行此操作的,因此您可能必须调整视图语法才能使其正确解析.