| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1615 人关注过本帖
标题:DataList为什么不能动态取得CheckBox状态,只能获得初始值。
只看楼主 加入收藏
booo
Rank: 1
等 级:新手上路
帖 子:189
专家分:0
注 册:2006-6-24
收藏
 问题点数:0 回复次数:11 
DataList为什么不能动态取得CheckBox状态,只能获得初始值。

private void DataList1_DeleteCommand(object source, System.Web.UI.WebControls.DataListCommandEventArgs e)
{


bool x=((CheckBox)DataList1.Items[0].FindControl("CB")).Checked;
Label3.Text=x.ToString();

if(x)
{
//DateTime time=Convert.ToDateTime(((Label)e.Item.FindControl("Label2")).Text);RegTime=#"+time+"# and

string sql="delete from Message where UserName='"+UserName+"'";
OleDbCommand com=new OleDbCommand(sql,Conn);
Conn.Open();
com.ExecuteNonQuery();
Conn.Close();

}

}

搜索更多相关主题的帖子: CheckBox DataList 动态 状态 
2006-08-17 07:08
chenjin145
Rank: 1
等 级:禁止访问
帖 子:3922
专家分:0
注 册:2006-7-12
收藏
得分:0 

這段代碼應該沒錯


[url=javascript:alert(1);] [div]fdgfdgfdg\" on\"[/div] [/url]
2006-08-17 08:51
srufeng
Rank: 1
等 级:新手上路
威 望:2
帖 子:152
专家分:0
注 册:2006-6-5
收藏
得分:0 

你要实现删除多条记录吗?


2006-08-17 13:02
booo
Rank: 1
等 级:新手上路
帖 子:189
专家分:0
注 册:2006-6-24
收藏
得分:0 

是啊。


网上赚钱到这里,无金钱投入的第二职业。 http://j./mimo/sale.aspx http://a./jgh8041/
2006-08-18 06:49
srufeng
Rank: 1
等 级:新手上路
威 望:2
帖 子:152
专家分:0
注 册:2006-6-5
收藏
得分:0 
那你得遍历DATAGRID,获取每一行的CheckBox状态才行!这样写确定不了是哪一行!

2006-08-18 09:04
belin2000
Rank: 3Rank: 3
等 级:论坛游侠
威 望:5
帖 子:975
专家分:194
注 册:2004-6-2
收藏
得分:0 

postback的问题吧


59ita点com(我就爱TA)
2006-08-18 15:46
booo
Rank: 1
等 级:新手上路
帖 子:189
专家分:0
注 册:2006-6-24
收藏
得分:0 
我是先试验一个,现在是一个都做不了。
它好像只认初始的值。我是想动态的进行删除。

网上赚钱到这里,无金钱投入的第二职业。 http://j./mimo/sale.aspx http://a./jgh8041/
2006-08-19 08:00
hoya
Rank: 5Rank: 5
等 级:贵宾
威 望:15
帖 子:538
专家分:0
注 册:2006-6-27
收藏
得分:0 
以下是引用srufeng在2006-8-18 9:04:34的发言:
那你得遍历DATAGRID,获取每一行的CheckBox状态才行!这样写确定不了是哪一行!

同时还要获取username


妈的...一天能卖一颗就很不错了...
2006-08-19 10:48
duyong007
Rank: 1
等 级:新手上路
帖 子:14
专家分:0
注 册:2006-8-10
收藏
得分:0 

先在html里添加如下代码
<asp:TemplateColumn>
<ItemTemplate>
<INPUT id=SelectedID type=hidden value='<%# DataBinder.Eval(Container.DataItem,"QID")%>' name=SelectedID runat="server">
<asp:CheckBox id="ck" runat="server"></asp:CheckBox>

</ItemTemplate>
</asp:TemplateColumn>

然后对删除按钮添加如下代码:

private void Button1_Click(object sender, System.EventArgs e)
{
string s="";
SqlConnection con=DB.CreateCon();
con.Open();
CheckBox chkExport;
foreach (DataGridItem dgItem in this.DataGrid1.Items)
{
chkExport=(CheckBox)dgItem.Cells[0].FindControl("ck");
if(chkExport.Checked==true)
{
s+=((HtmlInputHidden)dgItem.FindControl("SelectedID")).Value.ToString()+",";
}
}
if(s.Length-1>0)
{
SqlConnection conn = DB.CreateCon();;

SqlCommand comm=new SqlCommand("delete from T_QZ where QID in (",conn);
comm.CommandText+=s.Substring(0,s.Length-1)+")"; //删除最后的逗号
conn.Open();
comm.ExecuteNonQuery();
conn.Close();
}
this.BindToGrid();//重新绑定数据库

}
如此可以实现删除所选择项。

2006-08-19 16:41
booo
Rank: 1
等 级:新手上路
帖 子:189
专家分:0
注 册:2006-6-24
收藏
得分:0 
我指的是DataList,不是DataGrid。

是不是在DataList无法实现。它只能获得初始状态

网上赚钱到这里,无金钱投入的第二职业。 http://j./mimo/sale.aspx http://a./jgh8041/
2006-09-01 07:11
快速回复:DataList为什么不能动态取得CheckBox状态,只能获得初始值。
数据加载中...
 
   



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

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