TREEVIEW 控件,点击右键菜单实现添加,删除,修改等操作,和数据库有关!!!

luckxiayu 2005-08-29 04:52:13
如题!ASP.NET+C#
...全文
1101 11 打赏 收藏 转发到动态 举报
写回复
用AI写文章
11 条回复
切换为时间正序
请发表友善的回复…
发表回复
luckxiayu 2005-09-06
  • 打赏
  • 举报
回复
up.......
怎么这么久没有高手进来啊!
cctaiyang 2005-08-30
  • 打赏
  • 举报
回复
回复人: bleempan(恒星-痕星) ( ) 信誉:99 2005-08-29 21:10:00 得分: 0


一个介绍很详细的treeview 客户端操作介绍.
http://www.codeproject.com/aspnet/ClientSideTreeView.asp


--------------------------
建议楼主参考这个
luckxiayu 2005-08-30
  • 打赏
  • 举报
回复
哦,打错了,是无法从文本框中取值实现添加,修改,删除等操作!!!
luckxiayu 2005-08-30
  • 打赏
  • 举报
回复
谢谢各位大哥大姐(我想应该我还算小吧)哈哈。。。。
我参照了这个:
http://www.66study.com/Article/web/net/framework/200506/47571.html
下面的我就无法去实现和数据库联系起来,并且可以实现添加,修改,删除操作了!
欢迎高手进来帮忙啊
sykpboy 2005-08-29
  • 打赏
  • 举报
回复
mark
bleempan 2005-08-29
  • 打赏
  • 举报
回复
一个介绍很详细的treeview 客户端操作介绍.
http://www.codeproject.com/aspnet/ClientSideTreeView.asp
bleempan 2005-08-29
  • 打赏
  • 举报
回复
下面的js 实现右键菜单弹出
treeview.js
var menuskin = "skin";
var node = null;


//Calculate string length, one chinese char impropriate two byte.
String.prototype.lenB = function()
{
return this.replace(/[^\x00-\xff]/g,"**").length;
}


function hideMenu()
{
popupMenu.style.visibility = "hidden";
}

function highlighItem()
{
if (event.srcElement.className == "menuitems")
{
event.srcElement.style.backgroundColor = "highlight";
event.srcElement.style.color = "white";
}
}

function lowlightItem()
{
if (event.srcElement.className == "menuitems")
{
event.srcElement.style.backgroundColor = "";
event.srcElement.style.color = "black";
window.status = "";
}
}

//Call pop menu function
function clickItem()
{
if (event.srcElement.className == "menuitems")
{
if(event.srcElement.getAttribute("func") == "add" && node != null)
{
var strNewNodeName;
strNewNodeName = prompt('请输入新的目录名字:','');
if(strNewNodeName.lenB() < 20 & strNewNodeName.lenB() > 0) {
window.document.getElementById("TBNewCatalogName").value = strNewNodeName;
document.all.Button1.click();
}
else
alert("目录名长度不对");
}
else if (event.srcElement.getAttribute("func") == "delete" && node != null)
{
if(confirm("确定要删除此目录吗?"))
{
if(window.document.getElementById("TBNodeIndex").value == "0")
alert("不能删除此目录.");
else
document.all.Button2.click();
}
}
else if (event.srcElement.getAttribute("func") == "modify" && node != null)
{
//User can't edit root node name
if(window.document.getElementById("TBNodeIndex").value != "0")
{
var strEditNodeName;
strEditNodeName = prompt('请输入新的目录名字:','');
if(strEditNodeName.lenB() < 20 & strEditNodeName.lenB() > 0) {
window.document.getElementById("TBNewCatalogName").value = strEditNodeName;
document.all.Button3.click();
}
else
alert("目录名长度不对");
}
else
alert("不能修改根结点");
}
}
}


function TreeView1.oncontextmenu()
{
var nodeindex = event.treeNodeIndex;
if (typeof(nodeindex) == "undefined")
{
node = null;
return;
}

node = TreeView1.getTreeNode(nodeindex);
window.document.getElementById("TBNodeIndex").value = nodeindex;


var rightedge = document.body.clientWidth-event.clientX;
var bottomedge = document.body.clientHeight-event.clientY;
if (rightedge <popupMenu.offsetWidth)
{
//old author code
//popupMenu.style.left = document.body.scrollLeft + event.clientX - popupMenu.offsetWidth;
popupMenu.style.left = 30;
}
else
{
//old author code
//popupMenu.style.left = document.body.scrollLeft + event.clientX;
popupMenu.style.left = 30;
}
if (bottomedge <popupMenu.offsetHeight)
{
popupMenu.style.top = document.body.scrollTop + event.clientY - popupMenu.offsetHeight;
}
else
{
popupMenu.style.top = document.body.scrollTop + event.clientY;
}
popupMenu.style.visibility = "visible";
return false;
}

adandelion 2005-08-29
  • 打赏
  • 举报
回复
GZ
东风E9527 2005-08-29
  • 打赏
  • 举报
回复
mark
永远- 2005-08-29
  • 打赏
  • 举报
回复
好东西,哈哈,可以做到的了!
fphuang 2005-08-29
  • 打赏
  • 举报
回复
也许对你有用

客户端操作TreeView一直是比较头疼的问题,但也比较实用。好好研究了一下TreeView.htc,找到以下方法,不要告诉我你早已知道而懒得说:)

1.设置所选节点,如选中第二个节点
function SetSelNode()
{
TreeView1.selectedNodeIndex="1";
}

2.得到所选节点的Text,ID或NodeData
function GetAttribute()
{
alert(TreeView1.getTreeNode(TreeView1.selectedNodeIndex).getAttribute("Text"));
}
替换Text为ID或NodeData,可分别得到所选节点的ID或NodeData

3.修改节点属性,如修改第一个节点的Text
function ModifyNode()
{
var node=TreeView1.getTreeNode("0");
node.setAttribute("Text","hgknight");
}

4.得到点击节点
function TreeView1.onclick()
{
alert(TreeView1.getTreeNode(TreeView1.clickedNodeIndex).getAttribute("Text"));
}

5.添加节点
function AddNode()
{
var node=TreeView1.createTreeNode();
node.setAttribute("Text","hgknight");
TreeView1.add(node);
}

62,074

社区成员

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

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

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

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