Jie

心若无尘,一花一世界,一鸟一天堂;心若静,已如涅磐,风声物语,皆可成言.
  博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

刷新回传问题

Posted on 2007-12-07 20:12  JieNet  阅读(249)  评论(0编辑  收藏  举报
Web开发满打满算也就3个多月的时间,里面有些东西还是没有接触过,比如这个页面刷新回传的问题,请教了几个coder,得到的答案都是跳转。问题时如果提交成功后不用alert给用户提示成功,而在页面中用Label给出成功的提示的话,那使用跳转来解决这个回传问题似乎就不太好了,但至今我也没找到好的解决办法,有人说清楚缓冲区数据就可以,可我试验了也是不行。看来到目前为止,我所知道能解决此问题的办法也只有跳转了,无奈啊。。。
我的测试代码如下。 

    
protected void btnOK_Click(object sender, EventArgs e) 
    

        
string strConn = @"Data Source=.\SQLEXPRESS;AttachDbFilename=D:\VS2005\AspNetTest\App_Data\TestDb.mdf;Integrated Security=True;User Instance=True"
        
string strComm = "Insert Into Person(Name)Values('" + txtName.Text.Trim() + "')"
        SqlConnection conn 
= new SqlConnection(strConn); 
        SqlCommand comm 
= new SqlCommand(strComm, conn); 
        
try 
        

            conn.Open(); 
            comm.ExecuteNonQuery(); 
            lbInfo.ForeColor 
= System.Drawing.Color.Green; 
            lbInfo.Text 
= "提交成功"
        }
 
        
catch 
        

            lbInfo.ForeColor 
= System.Drawing.Color.Red; 
            lbInfo.Text 
= "提交失败"
        }
 
        
finally 
        

            conn.Close(); 
            Response.Redirect(Request.RawUrl);
//重新跳转到本页面 
        }
 
    }




新增内容:
1)
Response.Redirect(Request.RawUrl);
2)Response.Write("<script language='javascript'>alert('新增成功');window.location.href=window.location.href;</script>");

如果页面不需要记忆什么东西或提示alert,则使用1),否则使用2)