数据库:[表名:temp]
SECTIONS_ID LINK SECTIONS_NAME
0 0 首页
1 0,1 通知
2 0,1,2 内部通知
现在要往dropdownlist里绑定数据格式如下:
》首页
》首页》通知
》首页》通知》内部通知以这种层次形式呈现
从数据库读的是
select LINK from temp order by LINK
这样查出来是
》0
》0》1
》0》1》2
然后我写了一个方法来转换SECTIONS_ID为SECTIONS_NAME方法是:
public void additmes()
{
string items_id = "";
string name = "";
string addstr = "";
//加入第一項
//獲取所有link字段
string allitems = "select LINK from NEWS_SECTIONS order by LINK";
//獲取數據集
ds1 = db.getDataSet(allitems, "NEWS_SECTIONS");
//字段斷行數
int num = ds1.Tables["NEWS_SECTIONS"].Rows.Count;
//從1取值
for (int i = 0; i < num; i++)
{
//循環賦值
items_id = ds1.Tables["NEWS_SECTIONS"].Rows[i][0].ToString();
string[] arr = items_id.Split(','); for (int j = 0; j < arr.Length; j++)
{
string getname = "select SECTIONS_NAME from NEWS_SECTIONS where SECTIONS_ID="+arr[j];
ds2 = db.getDataSet(getname, "NEWS_SECTIONS");
name = ds2.Tables["NEWS_SECTIONS"].Rows[0][0].ToString();//獲取名字
addstr += ">>" + name;
Response.Write(addstr+"<br />");
}
parent.Items.Add(addstr);
}但是addstr的值有问题 具体如下:
>>首頁
>>首頁>>首頁
>>首頁>>首頁>>通知
>>首頁>>首頁>>通知>>首頁
>>首頁>>首頁>>通知>>首頁>>通知
>>首頁>>首頁>>通知>>首頁>>通知>>內部通知
我知道肯定是循环出问题了,但是又不知道该怎么改, 麻烦大家了!
SECTIONS_ID LINK SECTIONS_NAME
0 0 首页
1 0,1 通知
2 0,1,2 内部通知
现在要往dropdownlist里绑定数据格式如下:
》首页
》首页》通知
》首页》通知》内部通知以这种层次形式呈现
从数据库读的是
select LINK from temp order by LINK
这样查出来是
》0
》0》1
》0》1》2
然后我写了一个方法来转换SECTIONS_ID为SECTIONS_NAME方法是:
public void additmes()
{
string items_id = "";
string name = "";
string addstr = "";
//加入第一項
//獲取所有link字段
string allitems = "select LINK from NEWS_SECTIONS order by LINK";
//獲取數據集
ds1 = db.getDataSet(allitems, "NEWS_SECTIONS");
//字段斷行數
int num = ds1.Tables["NEWS_SECTIONS"].Rows.Count;
//從1取值
for (int i = 0; i < num; i++)
{
//循環賦值
items_id = ds1.Tables["NEWS_SECTIONS"].Rows[i][0].ToString();
string[] arr = items_id.Split(','); for (int j = 0; j < arr.Length; j++)
{
string getname = "select SECTIONS_NAME from NEWS_SECTIONS where SECTIONS_ID="+arr[j];
ds2 = db.getDataSet(getname, "NEWS_SECTIONS");
name = ds2.Tables["NEWS_SECTIONS"].Rows[0][0].ToString();//獲取名字
addstr += ">>" + name;
Response.Write(addstr+"<br />");
}
parent.Items.Add(addstr);
}但是addstr的值有问题 具体如下:
>>首頁
>>首頁>>首頁
>>首頁>>首頁>>通知
>>首頁>>首頁>>通知>>首頁
>>首頁>>首頁>>通知>>首頁>>通知
>>首頁>>首頁>>通知>>首頁>>通知>>內部通知
我知道肯定是循环出问题了,但是又不知道该怎么改, 麻烦大家了!
解决方案 »
- 按照状态实现显目效果
- 网页关闭时浏览器出错可能是什么原因
- FckEditor上传路径的问题
- 大家看一下,这个怎么解决
- 基础问题:如何替换aspx页面中的多处变量
- 100分求:System.ArgumentException: Column 'xxx' does not belong to table Table.
- 怎样让DetailsView控件只显示右边一列而不是两列?
- VS2008 添加引用一个dll的Com组件,然后在代码里实例化类时就出错。哪位高手帮助解决一下。
- 折腾很长时间还是未能解决,哪位大侠帮我看看下面的代码错在哪?
- 新手上路:DataGrid组件的应用
- 大家帮忙看看哦,,,,这段VB语句怎么换成CS的,马上结贴,在线等哈
- 幫忙看下這段JS
addstr = "";
for (int j = 0; j < arr.Length; j++)
{
string getname = "select SECTIONS_NAME from NEWS_SECTIONS where SECTIONS_ID="+arr[j];
ds2 = db.getDataSet(getname, "NEWS_SECTIONS");
name = ds2.Tables["NEWS_SECTIONS"].Rows[0][0].ToString();//獲取名字
addstr += ">>" + name;
Response.Write(addstr+"<br />");
}parent.Items.Add(addstr);
{
string getname = "select SECTIONS_NAME from NEWS_SECTIONS where SECTIONS_ID="+arr[j];
ds2 = db.getDataSet(getname, "NEWS_SECTIONS");
name = ds2.Tables["NEWS_SECTIONS"].Rows[0][0].ToString();//獲取名字
addstr += ">>" + name;
Response.Write(addstr+"<br />");
addstr = "";
}
for (int i = 0; i < num; i++)
for (int j = 0; j < arr.Length; j++)
---------------------------------------------
改为
for (int i = 0; i < num-1; i++)
for (int j = 0; j < arr.Length-1; j++)
试试