请问如何打开一个新的页面而下面的代码暂不执行啊?急!急!急!急!
当我点击按钮时候执行这句话
C# code
BasePage.OpenWebFormSize("v_ChoosePage.aspx", 255, 540, 250, 300);
Label1.Text = Session["FormID"].ToString();
OpenWebFormSize的代码为:
C# code
string js = @"<Script language='JavaScript'>window.open('" + url + @"','','height=" + heigth + ",width=" + width + ",top=" + top + ",left=" + left + ",location=no,menubar=no,resizable=yes,scrollbars=yes,status=yes,titlebar=no,toolbar=no,directories=no');</Script>";
HttpContext.Current.Response.Write(js);
可是现在关键在于我还没有打开我需要的页面,就运行到 Label1.Text = Session["FormID"].ToString();
然后报错,如何解决啊?
------解决方案--------------------
报什么错?
------解决方案--------------------服务器端代码是先运行的,执行完毕才发送到客户端
当然是执行完
= Session["FormID"].ToString();
才会发送内容到客户端的
------解决方案-------------------- Label1.Text = Session["FormID"].ToString();
应该改成
Label1.Text = Session["FormID"]==null?"": Session["FormID"].ToString();
------解决方案--------------------孟子大师分析的很好,就是这个问题。
服务端执行完毕后,你输出的这段js才会发送到客户端。所以Session["FormID"]是获取不到的,为空就对了