将数据附加到open.window()

时间:2018-03-08 23:47:21

标签: javascript ajax

所以我喜欢将从服务器收到的数据(JSON)附加到新的弹出窗口。我尝试过其他人已经发布但其中没有一个真正起作用。

$.ajax
    ({
        url: "/receiveData",
        type: "POST",
        contentType: "application/json; charset=UTF-8",
        data:myJSON,
        dataType: "json",
        success: handledata
    });

所以我有这个ajax调用并处理数据

这就是我在processedata函数上的内容,我喜欢将其附加到名为" user"的特定id上。在open.html中

var newin = window.open("open.html");
$(newin.document.body).ready(function() {
    //$(newin.document.body).append("<tr>"+ "Hello"+ "<tr>")
        newin.alert("hello");
});

1 个答案:

答案 0 :(得分:0)

您正在以错误的方式思考http请求 当您致电window.open()时,下一个窗口没有来自现有窗口的任何数据。这是一个新的js实例。

解决方案是将url中的数据作为查询参数过去,例如:"open.html?data="+queryStr,然后在 open.html 页面上从<body onload="/* Your ajax call here */">发送http调用。

如何编码json字符串:

function encode(queryStr) {
  return b.split(' ').map(i => encodeURIComponent(i)).join('+').replace(/'/g, "%27").replace(/"/g, "%22");
}

如何从url检索查询字符串: How can I get query string values in JavaScript?