在新的浏览器标签页中显示 json

Posted

技术标签:

【中文标题】在新的浏览器标签页中显示 json【英文标题】:Display json in a new browser tab page 【发布时间】:2013-11-05 14:28:09 【问题描述】:

我已经尝试了 4 天来解决这个问题。但我无法将 json 数据返回到新标签页。

我的代码:

<script type="text/javascript">
function CustomerId() 

var url = "Home/PanelGoster";  // My URL

var veri = 
Id: Id.GetValue(),
;

$.ajax(
url: "/Home/PanelGoster",
type: "POST",
dataType: "json",
contentType: 'application/json',
data: JSON.stringify(veri),
success: function (mydata) 
if (mydata.error6 == true) 


else  // Success

var something = window.open(url, '_blank');  // Problem Here , it does not work
something.focus();   // Problem Here


("#MusterilerGetir").html(mydata);          // Problem Here, should be displayed in a new tab

,
error: function () 


);
return false;

</script>

控制器:

    public ActionResult PanelGoster(MyModel model)
    
    var stringView = RenderRazorViewToString("PartialView", MyModel());
    return Json(stringView, JsonRequestBehavior.AllowGet);
    
    

【问题讨论】:

如果要在新窗口中显示视图,为什么要返回 json?只需返回您的视图; 怎么来的?你有例子吗? 您返回一个 json 对象,因此浏览器将仅显示您视图的文本。而不是 json 返回 PartialView 你有什么推荐的? 【参考方案1】:

试试

something = window.open("data:text/json," + encodeURIComponent(mysdata),
                       "_blank");
something.focus();

来自Open a new tab/window and write something to it?

【讨论】:

I get error in new tab ....此请求已被阻止,因为在 GET 请求中使用敏感信息可能会泄露给第三方网站。要允许 GET 请求,请将 JsonRequestBehavior 设置为 AllowGet。 我只在新标签中看到文本。我什么都不能点击。那么你有什么推荐的? 这取决于你需要什么,在你的问题中你说 在新标签页中显示 json 所以我猜你的问题已经回答了,不是吗?

以上是关于在新的浏览器标签页中显示 json的主要内容,如果未能解决你的问题,请参考以下文章

如何新打开一个标签页后,页面不跳转到新的标签页,而是停留在当前标签页?

Chrome 扩展程序:如何在新标签页中打开链接?

emacs怎么在标签页中打开多个文件

使用javascript在新标签页中打开图片

如何让新标签页打开新标签页中的网页。

在新标签页中打开网页 Selenium + Python