获取 fuelux 树中文件夹的 ID 或名称
Getting id or name of folder in fuelux tree
我正在尝试获取 fuelux 树中所选文件夹的 ID 或名称,但无法完成。
我的树是典型的 folder/file 类型树,我希望在单击文件时能够看到文件夹的 ID。
这是我的树数据源
var treeDataSource = new DataSourceTree({
data: [
{ name: 'Elektronik Belgelerim', type: 'folder', 'icon-class': 'blue', additionalParameters: { id: 'F1' } },
{ name: 'Gelen Kutusu', type: 'folder', 'icon-class': 'blue', additionalParameters: { id: 'F2' } },
{ name: 'Giden Kutusu', type: 'folder', 'icon-class': 'blue', additionalParameters: { id: 'F3' } },
{ name: 'Çöp Kutusu', type: 'folder','icon-class':'green', additionalParameters: { id: 'I1' } },
//{ name: 'Çöp Kutusu', type: 'item', 'icon-class': 'success', additionalParameters: { id: 'F4' } },
//{ name: 'Reports', type: 'item', additionalParameters: { id: 'I1' } },
//{ name: 'Finance', type: 'item', additionalParameters: { id: 'I2' } }
],
delay: 400
});
tree 的 js 函数在 tree-custom.js
中是这样开始的
var e = function (e, i) {
this.$element = t(e), this.options = t.extend({}, t.fn.tree.defaults, i), this.$element.on("click", ".tree-item", t.proxy(function (t) {
this.selectItem(t.currentTarget)
}, this)), this.$element.on("click", ".tree-folder-header", t.proxy(function (t) {
this.selectFolder(t.currentTarget)
}, this)), this.render()
};
这是我在 trree-custom.js 中再次在文件夹下添加链接的地方。我知道这很原始,但这就是我目前的技能所能做的。我添加的部分在引号之间。休息带有 beyondadmin 主题,看起来像平常的 fuelux。
selectFolder: function (e) {
//alert("testselectFolder");
//
//alert($('#myTree').tree({ dataSource: dataSource }));
var i, n, r, o = t(e),
s = o.parent(),
a = s.find(".tree-folder-content"),
l = a.eq(0);
//-----------------------------------------------
var li = $('<li>');
var TcgbLink = $('<a href=/E-Belge/Main/Folder/Inbox/?Type=1&DocumentTypeId=3>e-TCGB</div>' +"</br>");
var FaturaLink = $('<a href=/E-Belge/Main/Folder/Inbox/?Type=1&DocumentTypeId=4>e-Fatura</div>' + "</br>");
var Dolasim = $('<a href=>e-Dolasim Belgesi</div>');
li.append(FaturaLink);
a.append(li);
li.append(TcgbLink);
a.append(li);
li.append(Dolasim);
a.append(li);
//-----------------------------------------------
o.find(".fa.fa-folder").length ? (i = "opened", n = ".fa.fa-folder", r = "fa fa-folder-open", l.show(), a.children().length || this.populate(o)) : (i = "closed", n = ".fa.fa-folder-open", r = "fa fa-folder", l.hide(), this.options.cacheItems || l.empty()), s.find(n).eq(0).removeClass("fa fa-folder fa-folder-open").addClass(r), this.$element.trigger(i, o.data())
},
现在所有 4 个文件夹下都生成了这些链接。我希望能够获取文件夹的 ID(或名称,最好是 ID),以便我可以将新的类型参数分配给查询字符串。
到目前为止,我试图通过 this.data.id
获取 id 但无济于事。
与其在 selectFolder 回调中注入子文件夹,不如通过 dataSource 回调添加子文件夹(如本示例代码所示:http://getfuelux.com/javascript.html#tree-usage-javascript)。
数据源的第一个参数是单击树节点时的 "parent data"(第二个参数是您发送新的子数据数组的回调)。
这样您就可以使用 selected event 获取您的 ID,因为它会获取传递给它的 jQuery 数据。
我正在尝试获取 fuelux 树中所选文件夹的 ID 或名称,但无法完成。
我的树是典型的 folder/file 类型树,我希望在单击文件时能够看到文件夹的 ID。
这是我的树数据源
var treeDataSource = new DataSourceTree({
data: [
{ name: 'Elektronik Belgelerim', type: 'folder', 'icon-class': 'blue', additionalParameters: { id: 'F1' } },
{ name: 'Gelen Kutusu', type: 'folder', 'icon-class': 'blue', additionalParameters: { id: 'F2' } },
{ name: 'Giden Kutusu', type: 'folder', 'icon-class': 'blue', additionalParameters: { id: 'F3' } },
{ name: 'Çöp Kutusu', type: 'folder','icon-class':'green', additionalParameters: { id: 'I1' } },
//{ name: 'Çöp Kutusu', type: 'item', 'icon-class': 'success', additionalParameters: { id: 'F4' } },
//{ name: 'Reports', type: 'item', additionalParameters: { id: 'I1' } },
//{ name: 'Finance', type: 'item', additionalParameters: { id: 'I2' } }
],
delay: 400
});
tree 的 js 函数在 tree-custom.js
中是这样开始的var e = function (e, i) {
this.$element = t(e), this.options = t.extend({}, t.fn.tree.defaults, i), this.$element.on("click", ".tree-item", t.proxy(function (t) {
this.selectItem(t.currentTarget)
}, this)), this.$element.on("click", ".tree-folder-header", t.proxy(function (t) {
this.selectFolder(t.currentTarget)
}, this)), this.render()
};
这是我在 trree-custom.js 中再次在文件夹下添加链接的地方。我知道这很原始,但这就是我目前的技能所能做的。我添加的部分在引号之间。休息带有 beyondadmin 主题,看起来像平常的 fuelux。
selectFolder: function (e) {
//alert("testselectFolder");
//
//alert($('#myTree').tree({ dataSource: dataSource }));
var i, n, r, o = t(e),
s = o.parent(),
a = s.find(".tree-folder-content"),
l = a.eq(0);
//-----------------------------------------------
var li = $('<li>');
var TcgbLink = $('<a href=/E-Belge/Main/Folder/Inbox/?Type=1&DocumentTypeId=3>e-TCGB</div>' +"</br>");
var FaturaLink = $('<a href=/E-Belge/Main/Folder/Inbox/?Type=1&DocumentTypeId=4>e-Fatura</div>' + "</br>");
var Dolasim = $('<a href=>e-Dolasim Belgesi</div>');
li.append(FaturaLink);
a.append(li);
li.append(TcgbLink);
a.append(li);
li.append(Dolasim);
a.append(li);
//-----------------------------------------------
o.find(".fa.fa-folder").length ? (i = "opened", n = ".fa.fa-folder", r = "fa fa-folder-open", l.show(), a.children().length || this.populate(o)) : (i = "closed", n = ".fa.fa-folder-open", r = "fa fa-folder", l.hide(), this.options.cacheItems || l.empty()), s.find(n).eq(0).removeClass("fa fa-folder fa-folder-open").addClass(r), this.$element.trigger(i, o.data())
},
现在所有 4 个文件夹下都生成了这些链接。我希望能够获取文件夹的 ID(或名称,最好是 ID),以便我可以将新的类型参数分配给查询字符串。
到目前为止,我试图通过 this.data.id
获取 id 但无济于事。
与其在 selectFolder 回调中注入子文件夹,不如通过 dataSource 回调添加子文件夹(如本示例代码所示:http://getfuelux.com/javascript.html#tree-usage-javascript)。
数据源的第一个参数是单击树节点时的 "parent data"(第二个参数是您发送新的子数据数组的回调)。
这样您就可以使用 selected event 获取您的 ID,因为它会获取传递给它的 jQuery 数据。