日期:2014-05-18  浏览次数:20415 次

Response.Write不执行
C# code

bool flag=true;
                DataTable source=ds2.Tables[0];
                for(int i=0;i<source.Rows.Count;i++)
                {
                    double salePrice=Convert.ToDouble(source.Rows[i][9].ToString());
                    double costPrice=Convert.ToDouble(source.Rows[i][8].ToString());
                    double rate=salePrice/costPrice;

                    if(rate<1||rate>99)
                    {
                        flag=false;
                        break;
                    }
                }
                if(flag==false)
                {
                    Response.Write("<script language=jscript>alert('asdfasdf')</script>");
                }



这是我从代码中截除的一段,flag=false,但是Response.Write不弹出窗口,大家帮忙看看是什么原因吧

------解决方案--------------------
Page.RegisterClientScriptBlock("ky", "<script language=javascript>alert('s')</script>");
------解决方案--------------------
断点打if(flag==false)

ClientScript.RegisterStartupScript(Page.GetType(), "","<script>alert('asdfasdf');</script>");

------解决方案--------------------
探讨
我把下面的几百行代码单步了一下,这个alert不直接执行,它在下面的代码都执行完了才弹,很怪异阿,谁遇到过这样的问题吗,有什么好的解决办法吗

------解决方案--------------------
C# code

Response.Write("<script language=jscript>alert('asdfasdf')</script>");
Response.End();

------解决方案--------------------
C# code

if(flag==false)
                {
                    Response.Write("<script language=jscript>alert('asdfasdf')</script>");
                    Response.End();//这样就执行了
                }

------解决方案--------------------
C# code

Response.Write("<script>alert('asdfasdf')</script>");
Response.End();