elfinder
2013-03-11 159 views 2 likes 
2

我使用elFinder访问网站上的一些存储文件,但文件本身不能直接访问。相反,我通过特定的控制器操作请求他们。所以我重写getFileCallback在elFinder使用自定义网址:覆盖elFinder中的“打开”菜单项

getFileCallback: function (file) { 
    window.location.href = '@Url.Action("File", "Home")' + '?path=' + encodeURI(file); 
} 

这对一个双击文件的伟大工程。但是,如果我只是选择文件并使用elFinder工具栏中的“打开”按钮,则不会使用此回调。相反,它会打开一个弹出窗口并尝试使用默认URL,这会导致404错误。

有没有办法来覆盖工具栏中的打开按钮的行为?我一直在尝试Client event APIcommands options中的各种东西,但似乎找不到任何修改打开行为的东西。

有没有办法做到这一点?

回答

3

我最终什么事做了覆盖完全开放的功能:

elFinder.prototype.commands.open = function() { 
    // custom code 
}; 

(只是这样做在加载elFinder代码后script块。)

我不能说,如果它是理想,如果elFinder有重大的升级,它将需要一些调整,但它确实在做这项工作。 (因此,我也开始覆盖其他使用URL的功能,例如信息弹出窗口中的锚标签。)

+0

非常感谢您分享您的解决方案。 – theCrius 2015-01-02 08:48:35

相关问题