对于http://www.dojochina.com/?q=node/578对ExtJs动态加载树,现在给出.net版本。首先数据库结构表一样。这里我用的是sqlserver 2000 DDL如下:

   if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[FK_LoadTree_LoadTree]') and OBJECTPROPERTY(id, N'IsForeignKey') = 1)
ALTER TABLE [dbo].[LoadTree] DROP CONSTRAINT FK_LoadTree_LoadTree
GO

if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[LoadTree]') and OBJECTPROPERTY(id, N'IsUserTable') = 1)
drop table [dbo].[LoadTree]
GO

CREATE TABLE [dbo].[LoadTree] (
 [ItemID] [int] NOT NULL ,
 [ItemName] [varchar] (20) COLLATE Chinese_PRC_CI_AS NULL ,
 [ParentID] [int] NOT NULL ,
 [IsAvailable] [int] NULL
) ON [PRIMARY]
GO

 

  在Ext中 Tree.AsyncTreeNode实现对树结点的异步加载。此时我们只需让服务端生成指定格式的Json字符串(格式可参看Ext的例子)。js代码依然是惯例,这里我还是把他贴出来。

动态加载树Ext.onReady( function ()
);

 

   下面就是服务端的事。个人认为可以用sql语句递归查处。再生成json应该会更简单,但我sql还没写出来。所以我是先全部读到datatable中,在datatable中进行的各种处理。下面为服务端完整代码:

 

动态加载树public partial class TreeJsonData : System.Web.UI.Page

 

  看看效果,呵呵!!!Ok

 

 动态加载树

 

  

相关文章:

  • 2021-09-25
  • 2021-07-03
  • 2022-12-23
  • 2022-12-23
  • 2021-11-30
  • 2021-08-17
  • 2022-12-23
  • 2021-11-18
猜你喜欢
  • 2022-12-23
  • 2021-12-02
  • 2021-07-31
  • 2021-08-26
  • 2022-12-23
  • 2022-12-23
相关资源
相似解决方案