求助,关于阿信的xtree树,谁有改成sql版的经验,几个技术问题求助,在线等!

sd2191757 2004-08-05 09:26:03
1.server.asp里面,ActiveConnection = dbConn;
CommandType = 4;
CommandText = "dtree";
var objRs=Execute(null,parseInt(id));
dtree是存储过程吧,这个写在哪里,为什么我找不到?
2.我需要改字段名称,为什么parentid这个字段始终在各个页里都找不到?

3.谁能给我讲讲原理.
谢谢!
...全文
215 点赞 收藏 12
写回复
12 条回复
切换为时间正序
当前发帖距今超过3年,不再开放新的回复
发表回复
cuipi2003 2004-08-05
var dbConn=Server.CreateObject("adodb.connection");
dbConn.Open(Application("strConn"));
//var dbCmd=Server.CreateObject("adodb.command");
//with(dbCmd){
// ActiveConnection = dbConn;
// CommandType = 4;
// CommandText = "DeptTree";
// var objRs=Execute(null,parseInt(id));
//}
var objRs=Server.CreateObject("adodb.recordset");
var sql="SELECT (select count(*) from xtree where xtree.parentid=x.id) AS children, *
FROM xtree AS x
WHERE parentid="+id+"";
objRs=dbConn.Execute(sql)
回复
sd2191757 2004-08-05
后建立一个存储过程名字也叫dtree就可以了

SELECT (select count(*) from xtree where xtree.parentid=x.id) AS children, *
FROM xtree AS x
WHERE parentid=[@parentid];
这句话直接写在sql存储过程好象不行的!?要声明吧.如何改写?
回复
sd2191757 2004-08-05
因为数据库我不方便修改.
SELECT (select count(*) from xtree where xtree.parentid=x.id) AS children, *
FROM xtree AS x
WHERE parentid=[@parentid];
这句话能否在程序中建立?我替换到text中去,结果无法运行.
还有,阿信的代码只要有一点错误就显示无法加载,看不到出错信息,很难调试,有没有解决方法?
回复
cuipi2003 2004-08-05
tree.asp?id=0
测试,如果xml能正常现实就表示通过了
回复
cuipi2003 2004-08-05
和global没关系
css目录中的htc和xsl一定要有
然后修改tree.asp文件的数据库连接
用三sql的导入功能把表导入数据库,然后建立一个存储过程名字也叫dtree就可以了
回复
sd2191757 2004-08-05
天啊, 我不知道改了什么地方,现在连运行都看不到了.显示加载失败!
global.asp是不是一定要放网站跟目录下?index.asp呢
回复
cuipi2003 2004-08-05
程序不需要该,数据库连接改一下就可以了
把那个试图中的sql语句建一个一样dtree的存储过程,代码拷贝进入就能用了
回复
sd2191757 2004-08-05
请问你改 成sql版本,需要改哪些页面,还有视图怎么改?
回复
cuipi2003 2004-08-05
access的存储过程写在查询里面的,就是那个试图dtree
我改成sql server版本了
parentid就是xtree那张表中的一个字段
原理是基于xml和js
回复
sd2191757 2004-08-05
兄弟误会了我的意思,我不是传值给tree,而是从树中将选中的id传回母页面。他的onclick事件都写在xtree.htc里面的。
折腾了一下午,虽然原先不会xml,不过现在大概搞清楚他的结构了。
加一段:
function mousedblclick(bid)
{
//alert('s');
var e=window.event.srcElement;
var E=e.parentNode;
//alert(E.type);
if(E.type=='parent'){alert('请选择底层单位');return false;}
opener.form1.xbudgetid.value=E.uid;
opener.form1.xbudgetname.value=E.uname;
window.close();
}

ok!
贴出来也许对以后碰到问题的兄弟有帮助!
回复
cuipi2003 2004-08-05
不需要修改xtree.htc
只要把参数传过去就行了
<link rel="stylesheet" type="text/css" href="css/xtree.css">
<div id="xtree" class="xtree" XmlSrc="tree/tree.asp?ID=<%=request("ID")%>"></div>
这样就可以了,如果你一定要修改htc就要修改xsl
htc和xsl文件主要是要修改路径的问题,建议还是不要改动目录结构的好,我比较懒所以没有改
这连个文件只要目录结构一直可以复用的
回复
sd2191757 2004-08-05
好了,读取数据我已经搞定了.
现在第二个难题,我想把选中的id传到operner页面中去,需要修改xtree.htc控件了,该怎么改?
因为牵涉到树里面的属性和方法,可能比较难.不知道兄弟有没有做过?
如果能帮我弄好,我另送100分,谢谢~
回复
相关推荐
发帖
ASP
创建于2007-09-28

2.8w+

社区成员

ASP即Active Server Pages,是Microsoft公司开发的服务器端脚本环境。
申请成为版主
帖子事件
创建了帖子
2004-08-05 09:26
社区公告
暂无公告