A页传值(大量)到打开的页面B,B页面根据传值,处理。
点击button,触发:
function getReport()
{
//发送报表
var depot=document.getElementById('hdepot');
var style=document.getElementById('hstyle'); //数据量比较大
var ddl1=document.getElementById("ddl1");
var ddl2=document.getElementById("ddl2");
var libright=document.getElementById("libright")
var sort=document.getElementById('dddlreport');
//alert('|' + depot.value + '|');
//如果未选择报表,则不动
if(sort.value=='-')
{
alert("未选择报表");
return;
}
if(depot.value=='' || depot.value=='undefined')
{
alert("未选择店铺");
return;
}
if(libright.options.length<=0)
{
alert("未选中要查询的列");
return;
}
var ajax = initAjax();
var msg = document.getElementById("msg");
var dv=document.getElementById("dvLoad");
dv.style.visibility='visible';
var url = "report_show.aspx"; //此页上是一个gridview,根据传入的参数填充gridview
var postStr = "hdepot="+ depot +"&hstyle="+ style + "&ddl1="+ ddl1;
ajax.open("POST", url, true);
ajax.setRequestHeader("Content-Type","application/x-www-form-urlencoded");
ajax.onreadystatechange = function()
{
if(ajax.readyState == 4 && ajax.status == 200)
{
//alert(ajax.responseText);
dv.style.visibility='hidden';
}
else
{
msg.innerHTML = "<img src='../icon/ajax-loader.gif' /> 正在处理中...";
}
}
ajax.send(postStr);
}
//我的想法是,A页面点击查询后,触发getReport(),判断OK后,用post传值到report_show.aspx,然后打开report_show.aspx,这样用户可以方便看到查询结果。
//用ajax执行完report_show.aspx,可怎么看到数据,不想生成 xml再解析.
//谢谢