asp.net 文本框获取数据修改后回写问题求助

bain99 2011-05-15 09:27:10
各位大侠:现在碰到这个一个问题,百思不得其解,请各位解惑

意图:在page——load事件中,从数据库中检索一条数据,将各列赋值到前台的文本框中,以提供用户修改,当用户修改后,点保存,再把这修改后的数据回写到数据库中。
Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
Dim dout As Data.DataSet = Cls_employee.GetAllinfo(100001)//根据100001的员工号检索数据
txt_name.text= CType(dout.Tables(0).Rows(0).Item(2), String) //将检索的姓名赋值给txt_name文本框
End Sub
客户修改txt_name内容
Protected Sub lb_ok_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles lb_ok.Click
name=txt_name.text //将修改后的内容赋值给name变量
Cls_employee.update(name) //将name变量回写到数据库
end sub

现在碰到的问题是,即使修改文本框的内容,但name变量所得到的值还是从数据库检索的数值,而不是我希望的修改后的值,无法得到修改后的值,不知道为何,但看看逻辑上好像没有错,请大侠指点?
...全文
106 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
bain99 2011-05-15
  • 打赏
  • 举报
回复
哦,对的,犯了低级错误,谢谢啦
sihonglaoren 2011-05-15
  • 打赏
  • 举报
回复
原因很简单

督察怎么只有一个三角了?
q10777054O 2011-05-15
  • 打赏
  • 举报
回复
原因很简单

当你点击button 触发 lb_ok_Click 前
页面回发 导致又调用了一次 Page_Load 将txt_name的值又替换回了 初始值

解决方案:
在page_load内添加 if(!IsPostBack){}
使得页面只在第一次加载时 才去绑定 txt_name

62,041

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧