我有以下代码来响应RadToolBar上的单击命令。开关部分工作正常。我遇到麻烦的地方是在一个新的浏览器窗口中打开label.aspx?id = foo的Response.Write部分。 label.aspx页面是生成并提供PDF的简单页面。我认为我写的代码大多是正确的。不过,我一定错过了一些关键部分,因为当我运行应用程序并单击工具栏按钮时,什么也没有发生。由于开关片工作正常,label.aspx页面也是如此,所以问题在这里Response.Write("<script type='text/javascript'>window.open('Label.aspx?ID=" + RadGrid1.SelectedValues["PackageID"].ToString() + "','_blank');</script>");
任何想法?问题使用Response.Write传递javascript,打开新的浏览器窗口
protected void RadToolBar1_ButtonClick(object sender, RadToolBarEventArgs e)
{
switch (e.Item.Text)
{
case "Print Label":
Response.Write("<script type='text/javascript'>window.open('Label.aspx?ID=" + RadGrid1.SelectedValues["PackageID"].ToString() + "','_blank');</script>");
break;
case "Request Return":
//do something
break;
case "Remove":
//do something;
break;
}
还有其他几个类似的问题。我已经看了他们所有的东西,他们似乎推荐了我以上采用的相同方法。但是,我的代码仍然不起作用。
你在视图源中看到了什么? – Mrchief
我没有看到任何提及的label.aspx页面。但是,我不期望。 Response.Write仅在存在包含相关命令的回发时调用。 – hughesdan
Response.Write尝试把Response.End().... – 2GDev