GridView值在TEXTBOX值中显示,修改后更新到数据库
WEB下,单击GridView中的某行,然后该行的全部字段值就在相应的TEXTBOX中显示,我想实现的是,当GridView中的值在TEXTBOX中显示后,我修改TEXT...
WEB下,单击GridView中的某行,然后该行的全部字段值就在相应的TEXTBOX中显示,我想实现的是,当GridView中的值在TEXTBOX中显示后,我修改TEXTBOX中的值,然后能自动更新GridView和数据库。( 数据库中字段如下:id为主键,code,name,remark),我实现了点击GridView的一行,字段值在TextBox中显示,现在修改TextBox中的值保存到数据这里出错,会将所有在GridView中显示的值全覆盖。代码如下:for (int i = 0; i < GridView1.Rows.Count;i++)
{
int id = (int)GridView1.DataKeys[i].Value;
string code = Server.HtmlDecode(txtcode.Text);
string name = Server.HtmlDecode(txtname.Text);
string remark = Server.HtmlDecode(txtremark.Text);
string strSQL = "update post set code='" + code + "',name='" + name + "', remark=' " + remark + "' where id=" + id.ToString(); RocflyWeb.DatabaseOperate dtoper = new RocflyWeb.DatabaseOperate();
dtoper.addData(strSQL);} 展开
{
int id = (int)GridView1.DataKeys[i].Value;
string code = Server.HtmlDecode(txtcode.Text);
string name = Server.HtmlDecode(txtname.Text);
string remark = Server.HtmlDecode(txtremark.Text);
string strSQL = "update post set code='" + code + "',name='" + name + "', remark=' " + remark + "' where id=" + id.ToString(); RocflyWeb.DatabaseOperate dtoper = new RocflyWeb.DatabaseOperate();
dtoper.addData(strSQL);} 展开
2个回答
2013-05-27
展开全部
把这些去掉for 语句去掉,取主键的方法用这个int index = GridView1.SelectedIndex;
string post_id = GridView1.DataKeys[index].Value.ToString();就可以了,试试
string post_id = GridView1.DataKeys[index].Value.ToString();就可以了,试试
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
2013-05-27
展开全部
for (int i = 0; i < GridView1.Rows.Count;i++)这里不能便利。你修改了那一行就在数据库中改那一行,页面刷新了就自动会更新,或者使用ajax
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询