[Ajax]小山版Ajax实现无刷新树----- 实现过程解释

小山版用Ajax实现了无级数,但很多网友对小山的数都无法运行起来,这两天研究了一下,运行了起来。代码见:http://blog.csdn.net/21aspnet/article/details/1534279,把用到的相关知识和大家分享一下。
题外话:
若有以前的同事看到这个,可以替换我原来用递归算法实现的树,当子数节点变多时,递归是全部加载树,再显示页面,网页出现阻塞。这两天学了一些AJAX,特地改写了树。

----------------------

1.首先用到的是AjaxPro框架,如何部署框加,请参见http://www.cnblogs.com/lexus/archive/2007/11/29/977281.html

2.代码见:http://www.cnblogs.com/singlepine/archive/2006/11/23/434373.html 中的第4步骤可以合并到第2步骤中的CS代码

CS代码如下:

 using System;

using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using AjaxPro;
using System.Data;
using System.Data.SqlClient;
using ajaxexcise;
namespace ajaxexcise
{
public partial class Tree : System.Web.UI.Page
{
protected void Page_Load( object sender, EventArgs e)
{
AjaxPro.Utility.RegisterTypeForAjax( typeof (Tree));
}
[AjaxMethod(HttpSessionStateRequirement.ReadWrite)]
public static DataSet GetSubCategory( int iCategoryID)
{
string sql = string .Format( "SELECT CategoryID, CategoryName, FatherID, dbo.IsLeaf(CategoryID) as IsChild FROM Category WHERE FatherID = {0}" , iCategoryID);
return GetDataSet(sql);
}
[AjaxMethod(HttpSessionStateRequirement.ReadWrite)]
public static DataSet GetFormsList( int iCategoryID)
{
string sql = string .Format( "SELECT * FROM forms WHERE form_category_id = {0}" , iCategoryID);
return GetDataSet(sql);
}
public static DataSet GetDataSet( string sql)
{
string ConnectionString = System.Configuration.ConfigurationManager.ConnectionStrings[ "ConnectionString1" ].ToString();
SqlDataAdapter sda = new SqlDataAdapter(sql, ConnectionString);
DataSet ds = new DataSet();
sda.Fill(ds);
if (ds != null )
return ds;
else
return null ;
}
}
}
 
3.数据库说明:
 
 
4.运行结果
 
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值