
为jQuery-easyui 树添加,删除,修改树的节点,可能有人会说 *** 作完成以后刷新一下不就可以了吗。这种做法是可以,但是如果你的数据有很多,超过几万条。 *** 作完成后在刷新会很慢,效率不高。我们这里要讨论如何在不刷新的情况下外树添加,修改,删除节点。
首先在主页面添加几个方法:
[javascript] view plain copy
function removeRole(){
var node = $("#tt22")tree("getSelected");
$('#tt22')tree('remove', nodetarget);
}
function appendRole(leafText) {
var root = $("#tt22")tree('getRoot');
$("#tt22")tree("append",{
parent: roottarget,
data: [{
"text":leafText
}]
});
}
function updateRole(nodeText) {
var node = $("#tt22")tree("getSelected");
if(node) {
nodetext = nodeText;
$("#tt22")tree("update", node);
}
}
然后在 *** 作的时候,比如我添加一个角色,在action中添加三个变量: name:角色名称 operate:对应的 *** 作 role_id:角色Id
[java] view plain copy
requestsetAttribute("roleName", roleName);
requestsetAttribute("operate", operate);
requestsetAttribute("role_id", role_id);
然后在角色页面调用主页面定义的三个方法即可:
[javascript] view plain copy
$(function() {
var upd_flg = "${upd_flg}";
var add_role_id = "${add_role_id}";
var add_role_name = "${add_role_name}";
if((upd_flg == null) || (upd_flg == "")) {
return;
}
var leafText = "<a href=\"<%=path%>/admin/roleListOnloaddorole_id=";
leafText = leafText + add_role_id;
leafText = leafText + "\"";
leafText = leafText + " target=\"content_frame\">";
leafText = leafText + add_role_name;
leafText = leafText + "</a>";
if(upd_flg == "1") {
//新增
selfparentappendRole(leafText);
return;
}
if(upd_flg == "2") {
//修改
selfparentupdateRole(leafText);
return;
}
if(upd_flg=="3"){
//删除
selfparentremoveRole();
return;
}
});
ztree异步加载节点的时候需要提供一个url。
ztree初始化完会向这个url发送一次请求注意这个时候是不会带参数的。这个时候你需要返回给它你想要的节点。
ps:我是返回一个根节点给它。
然后在点击此时的节点时候,还是会向这个url发送请求此时会带配置的参数,如果你现在的处理方式和初始化之后那样,就还是返回你开始的那些节点给你。
所以,你需要根据不同的动作来处理你的返回值。
async : {enable : true,
url : _mapurl,//异步路径
autoParam : ["id","name" ],//请求携带节点上的属性值
dataFilter : function(treeId, parentNode, childNodes) {
if (!childNodes)return null;
for (var i = 0, l = childNodeslength; i < l; i++) {
var _c=childNodes[i];
_cisParent=_cparent;
childNodes[i]name = _cnamereplace(/\n/g, '');
}
return childNodes;
}
},
//只是提供处理思路 不需要copy
@RequestMapping("/getOrg")@ResponseBody
public List<ObjectTypeBean> getOrg(>
jquery中获取当前dom元素的子元素的方法有很多,常见的方法是使用children()方法或者fand()方法都是可以获取到某个元素的子元素的,children() 方法返回匹配元素集合中每个元素的子元素,find()方法获得当前元素集合中每个元素的后代,通过选择器、jQuery 对象或元素来筛选。
工具原料:jQuery、编辑器、浏览器
一、使用children()方法获得子元素
1、使用该方法获取子元素并设置子元素的字体为蓝色,代码如下:
<!DOCTYPE html><html>
<head>
<script type="text/javascript" src="/jquery/jqueryjs"></script>
<style>
body { font-size:16px; font-weight:bolder; }
p { margin:5px 0; }
</style>
</head>
<body>
<div>
<span>Hello</span>
<p class="selected">Hello Again</p>
<div class="selected">And Again</div>
<p>And One Last Time</p>
</div>
<script>$("div")children("selected")css("color", "blue");</script>
</body>
</html>
2、运行的效果如下图:
二、使用find()方法获取子元素
1、使用fand()方法获取子元素并且进行选择器的筛选,代码如下图:
<!DOCTYPE html><html>
<head>
<script type="text/javascript" src="/jquery/jqueryjs"></script>
</head>
<body>
<p><span>Hello</span>, how are you</p>
<p>Me I'm <span>good</span></p>
<script>
$("p")find("span")css('color','red');
</script>
</body>
</html>
2、运行的结果如下图:
以上就是关于基于jQuery easyUI 怎么获取树节点的id并且删除他全部的内容,包括:基于jQuery easyUI 怎么获取树节点的id并且删除他、jquery. ztree 初始化的时候先获取了一部分节点数据显示树结构,当点击每个节点的时候需要、jquery中如何获取当前DOM对象里的子元素等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)