我正在尝试做一件非常简单的事情,似乎已经碰到了一堵砖墙。它可能已经存在于文档中但我找不到它。
我正在尝试保存新创建的节点或重命名的节点。我从一个非常基本的设置开始:
$('#tree').jstree({
'core' : {
'check_callback' : true
},
'plugins' : ['contextmenu', 'dnd', 'state']
}).on('create_node.jstree', function(e, data) {
console.log('saved');
});
我期待的是:
1)右键单击现有节点之一
2)点击“创建” - 即console.log('saved');
点火时
3)我输入新节点的名称
4)按“enter”保存数据 - 此时我想运行一个ajax请求来保存数据库中的新节点。
如何从第4点开始捕捉事件?
答案 0 :(得分:1)
该插件的作者建议侦听rename_node事件。所以工作代码是:
$('#tree').jstree({
'core' : {
'check_callback' : true
},
'plugins' : ['contextmenu', 'dnd', 'state']
}).on('rename_node.jstree', function(e, data) {
console.log('saved');
});
答案 1 :(得分:0)
有时如果这不起作用并且您想要使用create_node事件,则使用
$('#tree').jstree({
'core' : {
'check_callback' : true
},
'plugins' : ['contextmenu', 'dnd', 'state']
}).bind('create_node.jstree', function(e, data) {
console.log('saved');
});
这可能就是这个伎俩。或者,如果它在某些弹出窗口中被使用,则使用实时事件而不是jquery事件,那肯定会到达现场。