-2

试图将一个快速而肮脏的页面放在一起,以在新窗口中重定向到另一个网站。

所以我在会话中存储一个 url,从 mvcSiteMap 重定向到页面,点击页面......

运行这个 javascript

    $(document).ready(function () {
        window.open( '@HttpContext.Current.Session["EisUrl"].ToString();' );
    });


</script>

}

而不是打开一个指向 google.com 的新窗口,我得到与此消息相同的窗口。

未找到视图“http://google.com”或其主视图,或者没有视图引擎支持搜索到的位置。搜索了以下位置:~/Views/ReportsManagement/http://google.com.aspx ~/Views/ReportsManagement/http://google.com.ascx ~/Views/Shared/http://google.com。 aspx ~/Views/Shared/http://google.com.ascx ~/Views/ReportsManagement/http://google.com.cshtml ~/Views/ReportsManagement/http://google.com.vbhtml ~/Views/共享/http://google.com.cshtml ~/Views/Shared/http://google.com.vbhtml

所以它把我的外部 URL 当作它仍然在网站内部......

这似乎应该很简单......显然我错过了一些明显的东西。

任何帮助表示赞赏。

4

4 回答 4

3

确保从会话中呈现的内容是您所期望的正确且格式正确的 URL。我通常window.location也使用在javascript中重定向。

于 2012-09-06T21:46:43.127 回答
3

也许完全超出范围,但你不能在ActionResult?

return Redirect("http://www.google.com");
于 2012-09-06T21:50:08.233 回答
1

尝试

window.location = '@HttpContext.Current.Session["EisUrl"].ToString()';

于 2012-09-06T21:46:24.547 回答
0

我想通了,我是一个 id 10 t,

我在视图中有这个(剃刀)

@model string

这在控制器中

public ActionResult GetEisReportRedirect()
        {
            string url =  eisReportBLLHdl.DoGetEisReportRedirect(  );

            return View( url );// i was passing url here to the view
        }

所以它试图将字符串作为模型传递,我决定我不确定确切的行为并交换到将它放在会话中..但将它们留在原处。

出于某种原因,该字符串被作为 URL 进行了解析,新窗口未打开的事实应该是它过早脱轨的线索。

当我从模型中删除该行并从返回 View()...

感谢所有的帮助!

于 2012-09-06T22:49:07.643 回答