请看第一张图片。
在此页面中,我使用LinkButton。(例如...“ sr001”,“ sr003”和所有)
.aspx页面
<asp:LinkButton ID="lnkbtn" runat="server" onclick="lnkbtn_Click"
ValidationGroup='<%# Eval("pid") %>'><%#Eval("productcode") %></asp:LinkButton>
.cs页面
protected void lnkbtn_Click(object sender, EventArgs e)
{
int id;
id = Convert.ToInt32(((LinkButton)sender).ValidationGroup.ToString());
string abc = "http://development.in/prod-more-info.aspx?pid=" + id;
Response.Write("<script>window.open('" + abc.ToString() + "','_blank');</script>");
}
现在,当我点击此链接按钮时,过程成功完成。
但..............
我的设计被这个过程打扰了,看第二张图。
我该如何解决这个问题?
请帮我....
不建议执行原始的Response.Write,因为从字面上看,您只是将内容添加到响应流中。
如果要确保脚本显示在正确的位置并执行,则应ClientScriptManager.RegisterStartupScript
改用。
ClientScriptManager cs = Page.ClientScript;
if (!cs.IsStartupScriptRegistered(this.GetType(), "MoreInfoPopup"))
{
int id;
id = Convert.ToInt32(((LinkButton)sender).ValidationGroup.ToString());
string abc = "http://development.in/prod-more-info.aspx?pid=" + id;
string script = String.Format("<script>window.open('{0}','_blank');</script>",abc);
cs.RegisterStartupScript(this.GetType(), "MoreInfoPopup", script);
}
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句