日期:2010-04-03
acerverbo 13:49:41
ds = SqlHelper.ExecuteDataSet(strConn, CommandType.Text, sql);
if (ds.Tables[0].Rows.Count > 0)
{
for (int i = 0; i <= ds.Tables[0].Rows.Count - 1; i++)
{
this.ddlsj.Items.Add(ds.Tables[0].Rows[i]["fbh"].ToString().Trim());
}
}
acerverbo 13:49:45
哪个不明白?
acerverbo 13:50:28
这个意思是,当填充的ds dataset 第一个数据表Tables[0] 的行数大于 0
acerverbo 13:50:44
则执行for语句
tornado0223 13:50:48
嗯。
acerverbo 13:51:35
for语句的意思是,逐行把 数据表中的fbh列添加到 ddlsj 下拉菜单的ITEM中
acerverbo 13:51:51
protected void btnback_Click(object sender, EventArgs e)
{
Page.Response.Redirect("zj/Xsmain.aspx");
}
tornado0223 13:51:49
i <= ds.Tables[0].Rows.Count - 1
这个是啥。。
acerverbo 13:52:12
i <= ds.Tables[0].Rows.Count - 1 for循环你没有学过么?
tornado0223 13:52:19
不是。。
tornado0223 13:52:48
这里
tornado0223 13:52:59
<=右边的东西
acerverbo 13:53:08
i++执行的条件是 i小于等于 数据表(Tables[0])的行数减1
acerverbo 13:53:30
ds = SqlHelper.ExecuteDataSet(strConn, CommandType.Text, sql);
acerverbo 13:54:09
这个的意思就是,执行 sql 查询语句,并把结果填充到DataSet,然后赋值给 ds
acerverbo 13:54:53
ds可以包含多个数据表,但是上面那句只是填充了一个数据表,所以 只存在 ds.Tables[0]
tornado0223 13:55:02
嗯。。
acerverbo 13:55:36
ds.Tables[0].Rows.Count - 1
即,ds 第一个数据表中行数 — 1
acerverbo 13:55:54
protected void btnback_Click(object sender, EventArgs e)
{
Page.Response.Redirect("zj/Xsmain.aspx");
}
tornado0223 13:56:06
这个是跳转页面?
acerverbo 13:56:12
这个函数 是党btnback click的时,执行
acerverbo 13:56:14
对的。
acerverbo 13:56:32
客户端执行页面跳转,到 zj/xs……
tornado0223 13:56:36
嗯
acerverbo 13:56:43
protected void ddlsj_OnSelectedIndexChanged(object sender, EventArgs e)
{
Session["bh"] = this.ddlsj.SelectedItem.Text.Trim();
}
acerverbo 13:57:26
ddlsj 下拉菜单所选Index值发生变化后执行
acerverbo 13:57:47
即,在呢国家会话 BH,内容为 DDLSJ的选择内容
acerverbo 13:58:07
俺给你解释完了,,,累死了
acerverbo 13:58:14
记得给我加分啊