jstree 节点拖拽保存数据库

时间:2023-01-07 12:08:06

需要jstree具有拖拽功能需要在加载jstree时添加dnd插件,具体看代码:

$('**').jstree({

//plugins-各种jstree的插件引入,展示树的多样性
'plugins' : [ "dnd", "types", "wholerow" ],
'core' : {
"check_callback" : true,//在对树进行改变时,check_callback是必须设置为true;
'data' :{
   'url' : 'modulemng/list',
   dataType:'json'
}
},
//types-对树的节点进行设置,包括子节点type、个数
'types' : {
  "#" : {
    "max_children" : 1
  }
}
});

使用dnd插件后,大家估计都在想其回调函数是dnd插件中的,就会去找jstree API中的dnd插件事件,然后发现怎么绑定到tree都绑定不上。仔细看API才发现,dnd插件的回调事件是绑定到document上的:

$(document).on('dnd_stop.vakata',function(e,data){

});

这样,当节点拖拽后就能触发此方法,但仔细一看data传回来的参数,晕了。

正在抓狂的时候发现有个move_node.jstree回调函数,这个函数是绑定在jstree上的,而且返回来的data参数:

jstree 节点拖拽保存数据库

这些参数已足够我们进行数据库操作了,而且简单明了。

我的代码是:

                        $( "#module_tree" )
.on('move_node.jstree', function(e,data){
console.info(data);
jQuery.post("modulemng/dndmodule",
{
id : data.node.id,
parent : data.parent,
position:data.position
},
function(data,status){
alert("Data: " + data + "\nStatus: " + status);
}, 'json'); })
.jstree({
//plugins-各种jstree的插件引入,展示树的多样性
'plugins' : [ "dnd", "types", "wholerow" ],
'core' : {
"check_callback" : true,//在对树进行改变时,check_callback是必须设置为true;
'data' :{
'url' : 'modulemng/list',
dataType:'json'
}
},
//types-对树的节点进行设置,包括子节点type、个数
'types' : {
"#" : {
"max_children" : 1
}
}
});
});

传回当前节点ID,父节点ID和相应的位置position即可。

jstree 节点拖拽保存数据库的更多相关文章

  1. TREEVIEW节点拖拽

    http://files.cnblogs.com/xe2011/TreeView_Drag_and_Drop.rar       假设把A节点往B节点上拖拽 那么  A 为Node1,B为Node2 ...

  2. easyui树节点拖拽排序的存储过程

    easyui树的拖拽排序功能 easyui树中有拖拽功能 树结构如下: 一个行政区域对应一个单位,一个单位对应多个部门,每个部门下有相关人员,功能要求: (1)行政区域没有子节点,点击text加载部门 ...

  3. TreeView 节点拖拽

    public Form1() { InitializeComponent(); treeView1.AllowDrop = true; treeView1.ItemDrag += new ItemDr ...

  4. twaver拓扑图拖拽后保存json数据

    功能描述:拓扑图.对节点进行拖拽,序列化获取拓扑图信息,保存到本地localStorage,刷新页面,执行反序列化,从本地获取之前保存的数据,展现之前拖拽后的拓扑 拓展:此处存储用的是web本地存储l ...

  5. C# TreeView 拖拽节点到另一个容器Panel中简单实现

    C# TreeView 拖拽节点到另一个容器Panel中简单实现 用了这么久C#拖拽功能一直没有用到也就没用过,今天因为项目需要,领导特地给我简单讲解了下拖拽功能,真是的大师讲解一点通啊.特地写一篇博 ...

  6. html5 Sortable.js 拖拽排序源码分析

    最近公司项目经常用到一个拖拽 Sortable.js插件,所以有空的时候看了 Sortable.js 源码,总共1300多行这样,写的挺完美的.   本帖属于原创,转载请出名出处. 官网http:// ...

  7. Dev GridView行拖拽

    http://blog.csdn.net/keyrainie/article/details/8513802 http://www.cnblogs.com/qq4004229/archive/2012 ...

  8. TREEVIEW拖拽对应修改目录

    附件:http://files.cnblogs.com/xe2011/TreeView_Drag_Directory%E6%93%8D%E4%BD%9C.rar     TREEVIEW拖拽对应修改目 ...

  9. Jquery实现可拖拽的树菜单

    效果图例如以下所看到的:下载地址http://download.csdn.net/detail/javaquentin/8290417 <html xmlns="http://www. ...

随机推荐

  1. PAT 解题报告 1003&period; Emergency &lpar;25&rpar;

    1003. Emergency (25) As an emergency rescue team leader of a city, you are given a special map of yo ...

  2. Egret --视觉编程,显示对象,事件

    1,在egret中,视觉图形都是由显示对象和显示对象容器组成的: 显示对象:准确的说,就是在舞台上显示出来的,包括能真实看见的图形,文字,图片,视频等:也包括不能看见但真实存在的显示对象容器: 一:显 ...

  3. css 开发心得

    1.一个 div内的行内 元素 如何水平对齐 将内部的元素设为 float  ,然后设置 margin-top 对齐,然后 用伪类清楚浮动的影响

  4. DOUAudioStreamer 中的DOUAudioFileProvider理解笔记

    概览 DOUAudioFileProvider读取音频文件local,ipod-library,remote audiofile(通过DOUSimpleHTTPRequest封装的CFHTTPMess ...

  5. Jquery&plus;Ajax限制查询间隔

    <%@ Page Language="C#" AutoEventWireup="true" CodeFile="Jquery20150305.a ...

  6. poj-2909-哥德巴赫猜想

    Description For any even number n greater than or equal to 4, there exists at least one pair of prim ...

  7. PC端和移动APP端CSS样式初始化

    CSS样式初始化分为PC端和移动APP端 1.PC端:使用Normalize.css Normalize.css是一种CSS reset的替代方案. 我们创造normalize.css有下面这几个目的 ...

  8. IntelIJ IDEA配置Tomcat遇到问题Error during artifact deployment&period; See server log for details

    IntelIJ IDEA在配置tomcat的时候会遇到Error during artifact deployment. See server log for details.这样的问题,我的系统是W ...

  9. pandas将DataFrame的列变成行索引

    pandas提供了set_index方法可以将DataFrame的列(多列)变成行索引,通过reset_index方法可以将层次化索引的级别会被转移到列里面. 1.DataFrame的set_inde ...

  10. 洛谷 P4012 深海机器人问题【费用流】

    题目链接:https://www.luogu.org/problemnew/show/P4012 洛谷 P4012 深海机器人问题 输入输出样例 输入样例#1: 1 1 2 2 1 2 3 4 5 6 ...