刷新页面和单击按钮怎么效果一样的
单击button将textbox里面的内容出入到数据库的table。
访问数据库是在button_click里面写的。
为什么我单击button插入一条数据之后,每次刷新页面都会再次插入数据?
- C# code
//if (!Page.IsValid) // return; //MembershipUser member= Membership.GetUser(); //Guid currentUserId=(Guid)member.ProviderUserKey; //string conn = // ConfigurationManager.ConnectionStrings["SecurityTutorialsConnectionString"].ConnectionString; //string insertsql = "Insert into GuestbookComments(Subject,Body,UserId) values(@Subject,@Body,@UserId)"; //using (SqlConnection myConnection = new SqlConnection(conn)) //{ // myConnection.Open(); // SqlCommand cmd = new SqlCommand(insertsql, myConnection); // cmd.Parameters.AddWithValue("@UserId", currentUserId); // cmd.Parameters.AddWithValue("@Subject", Subject.Text.Trim()); // cmd.Parameters.AddWithValue("@Body", Body.Text.Trim()); // cmd.ExecuteNonQuery(); // myConnection.Close(); //} //Subject.Text = null; //Body.Text = null;[解决办法]
插入数据后 response.redirect();转向一下 刷新就不会提交了。
[解决办法]
仔细看看刷新给你弹出的alert
你的数据又重新post了一遍,当然会再插入一次了
[解决办法]
那是因为页面记录了你刚操作的事件 只有在插入成功之后 加上response.redirect(“本页面”);跳转 才可避免按F5不再执行上一次操作
这个问题碰到过,目前还没有发现有其他的解决方法