关于下拉列表问题

我遇到的关于下拉列表内容呈现的问题,现在和大家分享
父节点1

        -子节点a

           --子节点aaaa

            --子节点bbbb

        -子节点 b  
 父节点2

        -子节点a

        -子节点 b     
  这种形式可以从数据库里读出来,   可是绑定到下拉框里就没的  ,这里涉及到空格被清除的问题  

解决办法:用中文全角度空格可以解决这个问题。

下面提供数据库中的查询方法:直接拿过去用好了。

if object_id('pp') is not null
drop proc pp
go
create proc pp @t varchar(20)
as
begin
declare @sql varchar(max)
set @sql='
DECLARE @t_Level TABLE(ID char(3),Level int,Sort varchar(8000))
DECLARE @Level int
SET @Level=0
INSERT @t_Level SELECT ID,@Level,ID FROM '+@t+' WHERE PID IS NULL
WHILE @@ROWCOUNT>0
BEGIN
    SET @Level=@Level+1
    INSERT @t_Level SELECT a.ID,@Level,b.Sort+a.ID
    FROM '+@t+' a,@t_Level b
    WHERE a.PID=b.ID
        AND b.Level=@Level-1
END

--显示结果
SELECT SPACE(b.Level*2) +''|-- ''+ a.Name
FROM '+@t+' a,@t_Level b
WHERE a.ID=b.ID
ORDER BY b.Sort'
exec (@sql)
end
go

--> 测试数据:[tb]

if object_id('[tb]') is not null drop table [tb]
create table [tb]([ID] varchar(3),[PID] varchar(3),[Name] varchar(6))
insert [tb]
select '001',null,'山东省' union all
select '002','001','烟台市' union all
select '004','002','招远市' union all
select '003','001','青岛市' union all
select '005',null,'四会市' union all
select '006','005','清远市' union all
select '007','006','小分市'
go

exec pp 'tb'

  
 

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值