data.push({
name: name,
age: age,
address: address,
contactnumber: contactnumber
});
var url = '../reports/student.php?data='+data;
window.open(url, '_blank');
../reports/student.php?data=[object%20Object]
上面是我想要发送到另一个页面的对象,因此我可以检索它并在下一页上使用它来生成报告。网址看起来像上面那个我不确定这是否可能,如果可能的话,我如何才能获得对象中每个数据的值。如果不可能请指出正确的方向,任何想法都是ap
答案 0 :(得分:2)
如果您绝对想要使用GET
请求,请使用JSON.stringify
:
var url = '../reports/student.php?data='+ encodeURIComponent(JSON.stringify(data));
但更好的方法是POST
请求。
您也可以使用jQuery.param()
:
var data = {
name: 'yourname',
age: 1,
}
var params = jQuery.param(data) // 'name=yourname&age=1'
var url = '../reports/student.php?'+ params;
答案 1 :(得分:1)
创建适合在URL查询字符串或Ajax请求中使用的数组,普通对象或jQuery对象的序列化表示形式。如果传递了jQuery对象,它应该包含具有名称/值属性的输入元素。
该文件还指出,
如果传递的对象在Array中,则它必须是
返回的格式的对象数组.serializeArray()
所以在你的情况下:
var url = '../reports/student.php?' + jQuery.param(serializeArray(data));
要反序列化,您应该使用jQuery BBQ的deparam函数,根据此问题中的cce答案:The $.param( ) inverse function in JavaScript / jQuery。