标题:DateGrid中模版列TextBox数据加不进去
只看楼主
yunj1105
Rank: 1
等 级:新手上路
威 望:1
帖 子:757
专家分:0
注 册:2007-2-13
 问题点数:0 回复次数:16 
DateGrid中模版列TextBox数据加不进去

我在DateGrid中加了模版列
<asp:TemplateColumn HeaderText="成绩">
<ItemStyle Width="42px" />
<ItemTemplate>
<asp:TextBox ID="text" runat="server" Width="40px"></asp:TextBox>
</ItemTemplate>
</asp:TemplateColumn>
下面是Button1的事件 怎么数据加不进去啊?而且也不报错,还会跳出提示框"输入成功!"
大家帮我看看哪出错了?
protected void Button1_Click(object sender, EventArgs e)
{
foreach (DataGridItem Item in DataGrid1.Items)
{
if (Item.ItemType == ListItemType.Item || Item.ItemType == ListItemType.AlternatingItem)
{
TextBox tet = (TextBox)Item.FindControl("text");

if (tet.Text != null)
{
string str_mark = "update lab_students set mark='" + int.Parse(tet.Text) + "' where user_ID='" + Item.Cells[1].ToString() + "'";
co_m.ENQ(str_mark);
}
}
}
Response.Write("<script defer>alert('输入成功!');</script>");
}

搜索更多相关主题的帖子: DateGrid中 TextBox 模版 数据 
2007-05-28 08:56
sdlklhd
Rank: 1
等 级:新手上路
威 望:2
帖 子:345
专家分:0
注 册:2005-12-20
得分:0 
是不是因为TextBox没有绑定数据啊

2007-05-28 09:08
bygg
Rank: 16Rank: 16Rank: 16Rank: 16
来 自:乖乖的心中
等 级:版主
威 望:241
帖 子:13555
专家分:3076
注 册:2006-10-23
得分:0 
你加个foreach 做什么?全部都更新??

飘过~~
2007-05-28 09:15
GrimFish
Rank: 1
等 级:新手上路
威 望:1
帖 子:167
专家分:0
注 册:2007-5-28
得分:0 

if (tet.Text != null)
{
string strDelId = DataGrid1.DataKeys[Item.RowIndex].Value.ToString();
string str_mark = "update lab_students set mark='" + int.Parse(tet.Text) + "' where user_ID='" + strDelId + "'";
co_m.ENQ(str_mark);
}

设置一个DATAKEYS就应该可以。

2007-05-28 09:32
yunj1105
Rank: 1
等 级:新手上路
威 望:1
帖 子:757
专家分:0
注 册:2007-2-13
得分:0 
你终于来了
是啊 一开始数据表中的mark是空的
这个是要加成绩进去

2007-05-28 09:35
GrimFish
Rank: 1
等 级:新手上路
威 望:1
帖 子:167
专家分:0
注 册:2007-5-28
得分:0 
也可以把循环里的co_m.ENQ(str_mark);这句执行SQL先去掉,换成
Response.Write(str_mark);
看看输出的SQL语句到底正确不正确。
2007-05-28 09:43
guming
Rank: 4
等 级:业余侠客
威 望:5
帖 子:329
专家分:277
注 册:2006-11-9
得分:0 
你把Response.Write("<script defer>alert('输入成功!');</script>")放在那,肯定会提示“输入成功”了,应该放在

if (tet.Text != null)
{
string str_mark = "update lab_students set mark='" + int.Parse(tet.Text) + "' where user_ID='" + Item.Cells[1].ToString() + "'";
co_m.ENQ(str_mark);
Response.Write("<script defer>alert('输入成功!');</script>");
}


不想停留。。。
2007-05-28 09:43
yunj1105
Rank: 1
等 级:新手上路
威 望:1
帖 子:757
专家分:0
注 册:2007-2-13
得分:0 
恩 楼上的有道理 楼上的楼上的方法我去试试

2007-05-28 09:51
bygg
Rank: 16Rank: 16Rank: 16Rank: 16
来 自:乖乖的心中
等 级:版主
威 望:241
帖 子:13555
专家分:3076
注 册:2006-10-23
得分:0 
哦,你是想添加数据到数据库中啊..
但是你写的SQL语句却是string str_mark = "update lab_students set mark='" + int.Parse(tet.Text) + "' where user_ID='" + Item.Cells[1].ToString() + "'"; 这个是修改....

飘过~~
2007-05-28 09:56
yunj1105
Rank: 1
等 级:新手上路
威 望:1
帖 子:757
专家分:0
注 册:2007-2-13
得分:0 
但是数据库是这样的
lab_students表
user_ID int (学号)
dept_ID int(所属院)
major_ID int(专业)
mark int(实验考试成绩)



2007-05-28 10:32



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-142887-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.472659 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved