日期:2014-05-18  浏览次数:20603 次

数据字典和dropdownlist
做菜品上传的时候要选择分类。
而分类是数据字典被存放在数据库的,并不是固定不变的。
想实现从数据库读取相应的分类进行选择。

例如分类可能有,口味,价格区间,荤素,材料。等等
口味:甜,嫌,辣,酸。
价格区间:0~10,10~20,20~30.
荤素:肉类,素菜;
材料:牛肉,羊肉,猪肉。。
等等
这个要什么做呢?
思路和代码都好都能给点。

------解决方案--------------------
定义一个表来保存字典:

dict_id,dict_name,dict_desc,parent_id
1001,口味,口味类别,root
100101,甜,口味子类,1001
2001,价格,价格类别,root
……

定义获取类别的函数
public DataTable GetDict(string parentid)
{
string ssql="select * from dict where parent_id='"+parentid+"'";
return exec(ssql).Tables[0];
}
……

于是页面调用:

DataTable dt=GetDict("1001")
drop_Taste.DataSource=dt;
drop_Taste.DataTextField="dict_name";
drop_Taste.DataValueField="dict_id";
……
------解决方案--------------------
甜,嫌,辣,酸 的父级菜单是 口味

0~10,10~20,20~30.的父级菜单是 价格区间

所以说白了这就是一个三级菜单

思路,数据库建立一张表:TopType(顶级分类,存放口味,价格区间什么的),写一段程序对单独这个表进行增删改操作。

数据库再建立一张表:SecondType(二级分类,存放酸甜苦辣这些),这个表中需要一个外键字段pid,对应TopType中的ID。后台添加程序实现两个下拉框的下拉联动。

如口味的ID是1,那么酸甜苦辣的pid就是1
口味:甜,嫌,辣,酸。
价格区间:0~10,10~20,20~30.
荤素:肉类,素菜;
材料:牛肉,羊肉,猪肉。。



------解决方案--------------------
探讨
这些我知道,数据库建好了,
主要是要根据数据库内容在页面上来动态添加dropdownlist怎么动态?