急啊,请教一个Ajax刷新的问题!

samfeng_2003 2007-04-24 04:50:32
我用了个 ajax.dll的组件

Web.Config里面的配置
<!--majicAjax-->
<configSections>
<section name="magicAjax" type="MagicAjax.Configuration.MagicAjaxSectionHandler, MagicAjax"/>
</configSections>
<magicAjax tracing="false" scriptPath="~/js">
<pageStore/>
</magicAjax>
<appSettings>
<add key="ConnectionString" value="data source=192.168.1.110;initial catalog=jzcm;user id=jzcm;password=jzcm" />
<add key="SystemName" value="合同管理系统" />
<add key="AppVersion" value="V1.0" />
</appSettings>
<system.web>
<!-- 对ajax支持 -->
<httpHandlers>
<add verb="POST,GET" path="ajax/*.ashx" type="Ajax.PageHandlerFactory, Ajax"/>
</httpHandlers>

然后在BLL层建立一ContractManage的类,里面定义了个方法
GetCCCTypeTree是得到一个Microsoft.Web.UI.WebControl 1.0的TreeView控件
[Ajax.AjaxMethod(Ajax.HttpSessionStateRequirement.Read)]
public TreeNode GetCCCTypeTree( )
{
DataSet ds = new DataSet();
ds = dalContManage.GetCCCTRoot();

string ctID = ds.Tables[0].Rows[0]["CT_ID"].ToString();
string ctName = ds.Tables[0].Rows[0]["CT_Name"].ToString();

TreeNode tnRoot = new TreeNode();
tnRoot.Expanded = true;
tnRoot.Text = ctName;
tnRoot.NavigateUrl = @"ContManaTree.aspx?ctID="+ds.Tables[0].Rows[0]["CT_ID"].ToString();
tnRoot.ImageUrl = "../images/TreeImg/root.gif";
tnRoot.Target = "mainFrame";

LoadNextTree( tnRoot, null, ctID );

return tnRoot;
}

/// <summary>
/// 递归得到下一级的所有合同类型节点
/// </summary>
/// <param name="tnParent">树节点控件</param>
/// <param name="TreeType">种类</param>
/// <param name="parentID">父节点</param>
/// <returns></returns>
public TreeNode LoadNextTree(TreeNode tnParent, string TreeType, string parentID)
{
DataSet dsChild;
if(null != TreeType)//根节点加载
{
dsChild = dalContManage.GetCCCTRoot();
}
else//子节点加载(用于递归调用时候)
{
dsChild = dalContManage.GetCCCTChild( parentID );
}

if(null == dsChild)//判断是否有子节点
{
return tnParent;
}
else
{
foreach(DataRow dr in dsChild.Tables[0].Rows)
{
TreeNode tnChild = new TreeNode();
tnChild.Text = dr["CT_Name"].ToString().Trim();
tnChild.Target = "mainFrame";
object oFlag = dalContManage.IfExCCCTChild( dr["CT_ID"].ToString().Trim() );
if( null != oFlag )
{
tnChild.ImageUrl = "../images/TreeImg/folder.gif";
tnChild.SelectedImageUrl = "../images/TreeImg/folderopen.gif";
}
else
{
tnChild.ImageUrl = "../images/TreeImg/file.gif";
}
//对于定位页面的设定
if(null != dr["CT_Name"])
{
tnChild.NavigateUrl = @"ContManaTree.aspx?ctID="+dr["CT_ID"].ToString();
}
tnParent.Nodes.Add(tnChild);
LoadNextTree(tnChild, null, dr["CT_ID"].ToString().Trim());
}
return tnParent;
}
}

里面有两个方法是DAL层的,但是应该不关事,是正确的

然后,我在web层里面调用
前台的javascript
<script language="javascript">
<!--
function tvCCCTypeResult()
{
ContractManage.GetCCCTypeTree(get_tree_Result_CallBack);
}

function get_tree_Result_CallBack(response)
{
if (response.value != null)
{
   
//debugger;
var tvTree = parent.leftFrame.document.getElementById("tvCCCType");
var tt = parent.leftFrame.document.getElementById("TextBox1");

var ds = response.value;
if(ds != null )
{  
tvTree.Nodes.Add( "123","234");
    tvTree.Nodes.Add( ds );
}
}
}

后台语句

private void Page_Load(object sender, System.EventArgs e)
{
// 在此处放置用户代码以初始化页面

Ajax.Utility.RegisterTypeForAjax(typeof(BLL.ContractManage.ContractManage));
if ( !IsPostBack )
{
InitPage();
Button1.Attributes.Add("onclick","tvCCCTypeResult();");

}

但是不行,我用了个TextBox1来测试,javascript语句是对的!但是为什么tvTree.Nodes.Add就是刷新不了呢?

}
...全文
299 8 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
samfeng_2003 2007-04-24
  • 打赏
  • 举报
回复
没有啊!我用的是DropDownList级联的那个Ajax, 然后级联DropDownList成功了的,我测试过了javascript里面tvTree是有值的,但是就是不能刷新,是不是Ajax只支持DataSet对象不支持TreeView对象呢?
djx520 2007-04-24
  • 打赏
  • 举报
回复
绝不让帖子沉下去
showhappy 2007-04-24
  • 打赏
  • 举报
回复
<section name="magicAjax" type="MagicAjax.Configuration.MagicAjaxSectionHandler, MagicAjax"/>
你应用这个是不是你搞错了啊,这个应该是magicAjax而不是ajax啊!
zhqs1000 2007-04-24
  • 打赏
  • 举报
回复
看晕了,太长
samfeng_2003 2007-04-24
  • 打赏
  • 举报
回复
急啊!有知道的吗?拜托,帮个忙吧!各位大侠!
egyqy 2007-04-24
  • 打赏
  • 举报
回复
帮顶
luck0235 2007-04-24
  • 打赏
  • 举报
回复
Ajax都是手写,没用过第三方的.
samfeng_2003 2007-04-24
  • 打赏
  • 举报
回复
急啊,分不够再加
比较可以的程序 想请教大家一起研究 ┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┓ ┃ News Speed Love / 速递交友   ┃ ┃ 程序版本:Nslove Version 5.0.0 ┃ ┃ 版权所有: 速递交友(nslove.com) ┃ ┣━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┫ ┃ News Speed Love ┃ ┃ Copyright 2003-2008 nslove.com - All Rights Reserved. ┃ ┃ nslove is a trademark of nslove.com ┃ ┣━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┫ ┃【版权声明】 ┃ ┃ 本软体为共享软体(shareware)提供个人网站免费使用。 ┃ ┃ 非经速递交友书面授权许可,不得将之用于盈利或非盈利性的商业用途。 ┃ ┃ 为适应实际的计算机应用环境或者改进其功能、性能,可以进行必要的修改 ┃ ┃ 但不得去除速递交友的版权标示,不得将修改后版本进行任何的商业行为。 ┃ ┃ 本软体为免费软件,用户自由选择是否使用,在使用中出现任何问题而造成 ┃ ┃ 的损失速递交友不负任何责任。 ┃ ┃ 使用该软件必须保留速递交友的版权声明,将该软件从原有自然语言文字转 ┃ ┃ 换成另一自然语言文字的,仍应注明出处。 ┃ ┣━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┫ ┃ 文件名称:Nslove5.0功能说明 ┃ ┗━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┛   安装要求:   安装环境:Windows2000以上,IIS5.0以上,商业版需要安装MSSql 2000以上,安装前请确保您满足安装环境。   组件要求:FSO读写权限,Adobe.Stream组件,邮件组件(如:Jmail),上传组件,水印组件   运行环境:ASP+Js+Ajax+XML   软件大小:22.6M   软件类别:国产软件|交友会员   软件语言:简体中文   软件授权:免费版   演示地址:http://www.nslove.com   相关链接:http://www.nslove.com   软件介绍:   1、Nslove5.0采用缓存+标签+模板重新设计核心,程序代码与模板分离,后台提供模板修改美化!语言环境ASP+SQL存储过程,支持达百万会员,结合Ajax刷新设计,提高用户的使用体验。布局方式Div+CSS设计提高访问速度!各栏目可生成静态html。   2、后台提供会员资料采集,可采集世纪佳缘、嫁我网会员等,如需要采集另外网站与本人联系。采集系统用类设计,分析用正则分析,速度非常快,大约1.5秒采集一个会员资料包括头像下载到本地,一夜之间可以达到百万用户数据。   3、支持二级域名设置:可对各个栏目进行二级设计,当然服务器需要二级域名支持,自由命名自由指定。   4、支持国家、省州、市区分站生成,并且各个分站会员自动匹配   5、支持学校分站生成,可建立各学校的交友网分站   6、会员注册资料包括基本信息、详细信息、联系信息等,注册步骤基本按这个顺序注册,只要注册完第一步,可登录之后再注册。注册完发送邮件进行激活,并且有16位激活代码!用户必须激活。会员注册以邮件地址为注册名!会员每天登录都会自动发送一封邮件,可作宣传或者服务使用,邮件内容可以后台设置!   7、用户注册可推荐、机构加盟注册,推荐与机构都可进行提成,提成可在后台设置提成比率!   8、注册完成生成个人主页,会员拥有自己的个人资料主页!可自由选择模板,更具个性化。   9、会员认证:身份证、头像、视频认证及上传房产证、婚育证、职业证等,多达22项认证,只要认证5项,即可得到5星认证会员。   10、头像提供本地上传、视频拍照,头像可在线进一步处理,可翻转、放大、缩小等操作!   11、头像可以设置显示模式:所有人可见、会员可见、VIp会员可见、推荐会员可见、金币支付可见、密码可见等几项!   12、会员可以发布征婚信息,更加快速的征友征婚!可自由发送或者关闭!   13、有接收到邮件信息,系统会在右下角上升一个小窗口,提示邮件信息及类别!   14、会员可添加专递对象,可对会员发送置顶邮件,让对方不得不看邮件内容!达到醒目作用,自由申请   15、会员可申请服务:如升级VIP、明星榜(总站、地区分站)等服务,只要金币足够可以自由申请   16、支持在线聊天、会员可以邀请对方进行在线聊天,可以立即更详细了解对方。   17、会员可以参与网站赚钱计划,普通会员提供推广代码,只要对方浏览该网址,并没有注册但是以后只要访问并注册,也属于该会员的推广会员,推广会员可参与拥金提成,在交友的同时也可以参与赚钱是个不错的地方。对于婚介机构有自己的推广代码,提成比率是不同!提成比率可以后台设置。   18、栏目说明:博客日记、网友相册、线下活动、1+1约会、群组圈子、拼客、试客、恋爱诊所、话题(辩论型)等。   19、撰写日记可创建属于自己的日记,可生成静态的html文件。发布日记有金币操作。可设置一天操作几次,防止刷金币问题,也可以作为管理员推广某个栏目提高人气方法,如今天对某个栏目设置金币赠送,让会员都来参与。其它栏目也有这个功能。   20、用户可创建相册,生成静态相册本。文件数由后台设置!相册图片来源可以本地批量上传、视频拍照、远程抓取保存到本地。   21、支持用户创建群组功能!创建个数,由后台管理设置!群组方便有相同兴趣组成一个群落!群组可以创建论坛版块、相册等。可设置群组管理员、可升级群组等级(普通群、高级群、超级群、无限群),等级后台可以设置!群组可选择模板生成!   22、发布聚会活动,婚介机构会员可以发布、可申请服务如场地提供、志愿者服务、主持人、电视媒体等!   23、1+1约会,会员可以找对方发起私人约会,可对大众发起公开约会。   24、可发布和参与拼客、试客信息,借与交友网站会员宏大,可以提高会员活跃,在交友的同时有另外一份礼物!   25、恋爱诊所提供会员提问问题解决问题的地方!   26、升级VIP、VIP用户有更高的权限,有时间期限!明星榜提供会员自我推荐,成功率可成倍增长。推荐有时间限制及费用要求   27、成功故事,会员成功交友可以发布,让大家来分享他的快乐,可创建一个两个人的空间,可以发布成功经验、可以上传相册等,可以选择自己的模板生成静态   28、会员管理操作更人性化、无需频繁的跳转窗口,提交保存只会跳出一个小窗口即可保存!      更多功能将会在后续进行补充或者到官方论坛查看:http://www.nslove.com/bbs/    ┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┓ ┃ 福建速递交友网络科技有限公司 ┃ ┃ 网址:http://www.nslove.net、http://www.nslove.net ┃ ┃ 地址:福建省厦门市集美区凤林下头37号 ┃ ┃ 电话:0592-6250838 ┃ ┃ 手机:013459256001 ┃ ┃ 主机事业部:info@nslove.com ┃ ┃ 网站事业部:love@nslove.com ┃ ┃ 在线联系:QQ 10689579 MSN:Ns_L@hotmail.com ┃ ┃ 详细联系方法:http://www.nslove.cn/email.asp ┃ ┗━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┛

62,243

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧