.net获取不到文本框改变后的值

流光溢辉 2013-03-06 05:37:49
程序的功能,就是当用户输入正确的用户名和密码后,根据TextChanged事件自动获取用户的其他信息,放在相应的文本框中,当用户更改用户信息,点击保存按钮后,用户的信息会做更改,
可是保存的时候获取的不是修改后的值,而是修改前的值,请问各位这个问题该怎么解决
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using Model;
using BLL;
using System.Data;

namespace web
{
public partial class loginSample : System.Web.UI.Page
{
Btransport btr = new Btransport();

protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{

if (null != Request.Cookies["sample_username"])
{
HttpCookie icookie = Request.Cookies["sample_username"];
icookie.Expires = DateTime.Now.AddMilliseconds(100);
Response.Cookies.Add(icookie);
}
ClientScript.RegisterStartupScript(this.GetType(), "myscript", "<script type='text/javascript'>setStyle();</script>");
}
}

protected void uSaveButton_Click(object sender, EventArgs e)
{
yp_user luser = new yp_user();
luser.User_name = mName.Text;
luser.User_client_name = mClientName.Text;
luser.User_clientcompany = mClientCompany.Text;
luser.User_projectphone = mProjectPhone.Text;
luser.User_projectemail = mProjectEmail.Text;
if (mNewPwd.Text.Length > 1)
{
luser.User_pwd = mNewPwd.Text;
}
else {
luser.User_pwd = mOldPwd.Text;
}
bool bo = btr.userModify(luser, Session["oldUsername"].ToString());
if (bo == true)
{
Session["oldUsername"] = null;
this.ClientScript.RegisterStartupScript(GetType(), "", "<script>alert('保存成功!')</script>");
}
else {
this.ClientScript.RegisterStartupScript(GetType(), "", "<script>alert('对不起,保存失败!')</script>");
}

}

protected void mOldPwd_TextChanged(object sender, EventArgs e)
{
yp_user luser = new yp_user();
luser.User_name = mName.Text;
luser.User_pwd = mOldPwd.Text;
bool boo = btr.userLogin(luser);
if (boo == true)
{
Session["oldUsername"] = mName.Text;
DataSet das = btr.isUserNameExisted(mName.Text);
mOldPwd.Attributes.Add("value", mOldPwd.Text);
mClientName.Text = das.Tables[0].Rows[0]["user_clientname"].ToString();
mClientCompany.Text = das.Tables[0].Rows[0]["user_clientcompany"].ToString();
mProjectPhone.Text = das.Tables[0].Rows[0]["user_projectphone"].ToString();
mProjectEmail.Text = das.Tables[0].Rows[0]["user_projectEmail"].ToString();
}
else {
this.ClientScript.RegisterStartupScript(GetType(), "", "<script>alert('对不起,您输入的用户名和密码不匹配!')</script>");
}
ClientScript.RegisterStartupScript(this.GetType(), "myscript", "<script type='text/javascript'>changeColor('modify');</script>");
}
}
}
...全文
274 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
流光溢辉 2013-03-07
  • 打赏
  • 举报
回复
问题已解决,可以利用SESSION做判断
流光溢辉 2013-03-06
  • 打赏
  • 举报
回复
引用 1 楼 godoone 的回复:
是这里的 luser.User_name = mName.Text; luser.User_pwd = mOldPwd.Text; 还是 mClientName.Text = das.Tables[0].Rows[0]["user_clientname"].ToString(); mClientComp……
上面的 luser.User_name = mName.Text; luser.User_pwd = mOldPwd.Text; 获取的不是修改后的值
Ritchie_E 2013-03-06
  • 打赏
  • 举报
回复
TextChanged 里每次操作都会从数据库里读相同的内容……
Ritchie_E 2013-03-06
  • 打赏
  • 举报
回复
是这里的 luser.User_name = mName.Text; luser.User_pwd = mOldPwd.Text; 还是 mClientName.Text = das.Tables[0].Rows[0]["user_clientname"].ToString(); mClientCompany.Text = das.Tables[0].Rows[0]["user_clientcompany"].ToString(); mProjectPhone.Text = das.Tables[0].Rows[0]["user_projectphone"].ToString(); mProjectEmail.Text = das.Tables[0].Rows[0]["user_projectEmail"].ToString(); 这里的值没有变化?

62,025

社区成员

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

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

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

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