D
dnes
Open Multiple New Browser Windows from ASP.NET
I'm having trouble figuring out how to open multiple new browser windows
(each one displaying something different). As you can see from the code
below, I have one ASP.NET page that has a foreach loop, and inside this
foreach loop, I was to spawn a new browser window using the second ASP.NET
page.
This doesn't work. Only the last time through the foreach loop causes a new
browser window to open. All other times through the loop don't open a new
browser window.
Would any one know how to make this work?
Page1.aspx
protected void LinkButtonGenerateMyGroup_Click(object sender, EventArgs e)
{
int i = 0;
string from = ...;
string to = ...;
...
foreach (someobject in someobjects)
{
string sKey = "GenerateReport" + i.ToString();
string sScript = System.String.Empty;
i++;
// Tried but doesn't work
//sScript =
"window.open('Page2.aspx?from=MyGroups&usedates=true&fromdate=" + from +
"&todate=" + to + "', '" + sKey + "',
'copyHistory=no,directories=no,location=no,menubar=no,resizable=yes,scrollba
rs=yes,status=no,toolbar=no');";
//Page.ClientScript.RegisterClientScriptBlock(this.GetType(), sKey,
sScript, true);
// Tried but doesn't work
//sScript =
"<script>window.open('Page2.aspx?from=MyGroups&usedates=true&fromdate=" +
from + "&todate=" + to + "', '" + sKey + "',
'copyHistory=no,directories=no,location=no,menubar=no,resizable=yes,scrollba
rs=yes,status=no,toolbar=no');</script>";
//Response.Write(sScript);
}
}
Page2.aspx
protected void Page_Load(object sender, EventArgs e)
{
...
Response.Clear();
Response.ClearContent();
Response.ClearHeaders();
Response.AppendHeader("content-length", result.Length.ToString());
Response.ContentType = "Application/pdf";
Response.BinaryWrite(result);
Response.Flush();
Response.Close();
}
I'm having trouble figuring out how to open multiple new browser windows
(each one displaying something different). As you can see from the code
below, I have one ASP.NET page that has a foreach loop, and inside this
foreach loop, I was to spawn a new browser window using the second ASP.NET
page.
This doesn't work. Only the last time through the foreach loop causes a new
browser window to open. All other times through the loop don't open a new
browser window.
Would any one know how to make this work?
Page1.aspx
protected void LinkButtonGenerateMyGroup_Click(object sender, EventArgs e)
{
int i = 0;
string from = ...;
string to = ...;
...
foreach (someobject in someobjects)
{
string sKey = "GenerateReport" + i.ToString();
string sScript = System.String.Empty;
i++;
// Tried but doesn't work
//sScript =
"window.open('Page2.aspx?from=MyGroups&usedates=true&fromdate=" + from +
"&todate=" + to + "', '" + sKey + "',
'copyHistory=no,directories=no,location=no,menubar=no,resizable=yes,scrollba
rs=yes,status=no,toolbar=no');";
//Page.ClientScript.RegisterClientScriptBlock(this.GetType(), sKey,
sScript, true);
// Tried but doesn't work
//sScript =
"<script>window.open('Page2.aspx?from=MyGroups&usedates=true&fromdate=" +
from + "&todate=" + to + "', '" + sKey + "',
'copyHistory=no,directories=no,location=no,menubar=no,resizable=yes,scrollba
rs=yes,status=no,toolbar=no');</script>";
//Response.Write(sScript);
}
}
Page2.aspx
protected void Page_Load(object sender, EventArgs e)
{
...
Response.Clear();
Response.ClearContent();
Response.ClearHeaders();
Response.AppendHeader("content-length", result.Length.ToString());
Response.ContentType = "Application/pdf";
Response.BinaryWrite(result);
Response.Flush();
Response.Close();
}