1、用树形的形式来设计
表字段ID、PID,其他字段。。。PID是上级的ID,联动的时候查询,只需要查询PID跟当前变动的对应的ID相等就可以
2、用编码的方式
类似身份z的前6位的设计,就是分别是省、市、区。。。。
你查询的时候,直接查询对应的编码一样的就可以
海枫科技
数据库设计:database: db
table: sort1,sort2
sort1-data: id name vablue
1 aa
2 bb
sort2-data: id name parent_id
1 aa-a 1
2 aa-x 1
3 bb-m 2
4 bb-j 2
在dw中放置2个跳转菜单,
在第一个select中添如下代码:
<option>---请选择---</option>
<?php
$host = "localhost"
$db_name = "db"
$username = "root"
$password = ""
$conn=mysql_connect($host,$username,$password) or die("不能链接到数据库!")
$db=mysql_select_db($db_name,$conn)
$sql="select * from sort1 order by id ASC"
$result = mysql_db_query($db_name,$sql)
while($row = mysql_fetch_array($result)) {
$sort1_id = $row["id"]
$sort1_name = $row["name"]
$sort1_value = $row["value"]
if(!$sort1_value){
$str = "<option value = '?data1=$sort1_id'"
if($row["id"] == $data1){
$str .= "selected"
}
}
else{
$str = "<option value = '$sort1_value'"
}
$str .= ">$sort1_name</option>"
echo $str
}
?>
在一级的DropDownLis1中帮定数据DropDownLis1.DataSource = dt //数据源
DropDownLis1.DataTextField = "classname"//要帮定的字段名称
DropDownLis1.DataValueField = "ID"
DropDownLis1.DataBind()
在二级中先开启DropDownLis1的AUTOPOSTBACK,并在DropDownLis1的文本改变事件中(SelectedIndexChanged)为DropDownLis2添加Item
string LayerID= DropDownLis2.SelectValue//根据此LayerID
DropDownLis2.DataTextField = "classname"//要帮定的字段名称
DropDownLis2.DataValueField = "LayerID"
DropDownLis2.DataBind()
这样以此类推,你可以把他写成递归函数,这样就可以
希望对你有帮助,我手写的,有不对的地方自己改改就是了
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)