我有一个返回对象数组的ajax请求,我需要将它们返回到另一个页面进行打印。但我不知道如何将这个对象数组传递给另一个标签页或页面。
$.ajax({
type: "POST",
url: "atualizeOrder",
data: JSON.stringify(ordens),
contentType: "application/json; charset=utf-8",
dataType: "json",
success: function(list) {
console.log(list);
var printWindow = window.open( '/erp/index/test');
printWindow.document.write(list);
printWindow.addEventListener('load', function(){
printWindow.print();
printWindow.close();
}, true);
}
});
答案 0 :(得分:1)
只需在子窗口中指定数组:
printWindow.myList = list;
然后可以在子窗口内执行的任何JavaScript代码中访问它作为全局变量myList
您还可以在父窗口中预呈现lis并将生成的HTML附加到子窗口,您可以在jQuery或模板引擎(如Mustache)中执行此操作
var renderedListHTML = Mustache.render("HTML TEMPLATE HERE", list);
printWindow.document.write(renderedListHTML);
答案 1 :(得分:0)
你尝试过这样的事吗?
var printWindow = window.open('/erp/index/test');
printWindow.list = list;
这里"列表"成为新窗口对象的属性,因此您可以非常轻松地操作它。