javascript - 在新窗口中显示 View

标签 javascript jquery html asp.net asp.net-mvc

我开发了一个 ASP.NET MVC 应用程序,它将根据用户输入运行多个预屏功能。

计划是从现有的 HTML/JavaScript 应用程序调用这个新的 mvc 应用程序。我想在调用应用程序之外的新浏览器窗口中显示 Controller 的 View 。

我的 AJAX 调用将如下所示

$.support.cors = true;

$.ajax( {
    url: "http://mvc_url/prescreen",
    data: jsonObject,
    type: "POST",
    processData: false,
    dataType: 'html',
    contentType: "application/json; charset=utf-8",
    timeout: 60000,
    //dataType: "json",
    success: function ( msg )
    {
        ...on success msg = html rendered from view...
    },
    error: function ( XMLHttpRequest, textStatus, errorThrown )
    {
        ...error handling...
    }
} );

我已经对此进行了测试,成功后消息确实包含 View 中完全呈现的 HTML。我的问题是如何使用渲染的 HTML 打开一个新窗口?

我尝试过以下方法:

var newWindow = window.open( "", "", "" );
newWindow.document.write( msg );

这似乎有效。有点。新窗口打开并显示 html,但随后我的 View 样式表和包含的 javascript 文件丢失了。因此,如果使用上面的 window.open 代码是正确的,那么我该如何获取必要的样式表和 javascript 文件呢?

EDIT

利用 AndyJ 提供的建议,我修改了 View 以包含基于我的基本应用程序的相对路径。这是我的 MVC 返回的标记

<!DOCTYPE html>
<html>
<head>
    <meta charset="utf-8" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Offer</title>

    <link href="../css/site.css", type="text/css" rel="stylesheet" />

</head>
<body>
    <div class="container body-content">

    ... Page Content ...

    <script src="/baseapp/Scripts/jquery-1.8.2.js" type="text/javascript"></script>
    <script src="/baseapp/js/someInclude.js" type="text/javascript"></script>

    <script type="text/javascript">
        InitializeForm();
    </script>

InitializeForm 方法是在 someInclude.js 中定义的。

根据上述内容并假设文件位于路径中,所有内容都应该链接起来,对吗?那么我还可能做错什么?

最佳答案

除了 Andy J 提供的帮助(谢谢)之外,我还发现当在新窗口中呈现响应时,JQuery 库正在我的初始化脚本之后加载。为了避免这种情况,我只是将事件处理程序添加到控件的内联属性中。

这可能是一种解决方法,但目前它似乎对我有用。

关于javascript - 在新窗口中显示 View ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26846519/

相关文章:

javascript - 请求刷新页面

javascript: var 仅在 IE 中未定义

jquery - 在模态 ('show' 上自动滚动 Bootstrap 模态

html - 如何修复 css 在小屏幕上有两列?

Javascript onClick() 和 KineticJS setPosition()

javascript - 使用 js/jquery 从 csv 创建谷歌图表

javascript - 屏幕底部的 Jquery 动画

javascript - 如何在功能组件中使用react-redux进行api调用

javascript - JSON-如何从json字符串中获取单个内容

javascript - JQuery 从动态生成的下拉列表中获取选定的值