i want when i click on file in elfinder return a url to a textfield

4k Views Asked by At

Please help me about this , I have a textfield in my page , and i want when i click on textfield or a button , elfinder open in a popup and when i choose a file that close and url of the file return in to the textfield , i able to use another filemanager if that works fine

<script type="text/javascript" src="../elfinder/jquery/jquery-1.9.1.min.js"></script> 

<script type="text/javascript" src="../elfinder/jquery/jquery-ui-1.10.1.custom.min.js"></script>
<link rel="stylesheet" type="text/css" media="screen" href="../elfinder/css/smoothness/jquery-ui-1.8.13.custom.css">

<script type="text/javascript" src="../elrte/js/elrte.min.js"></script>
<script type="text/javascript" src="../elfinder/js/elfinder.min.js"></script>
<script type="text/javascript" src="../elfinder/js/jquery.dialogelfinder.js"></script>
<script src="../elrte/js/i18n/elrte.en.js" type="text/javascript" charset="utf-8"></script>
<link rel="stylesheet" type="text/css" media="screen" href="../elrte/css/elrte.min.css">
<link rel="stylesheet" type="text/css" media="screen" href="../elfinder/css/elfinder.min.css">
<link rel="stylesheet" type="text/css" media="screen" href="../elfinder/css/dialog.css">

<body>
    <input type="text" id="fileurl" />
    <div id="finder"></div>
</body>
2

There are 2 best solutions below

0
On

in latest vesrion of elFinder:

You can use

getFileCallback : function(file) {
    cosole.log(file);
}
0
On

see this url : https://github.com/Studio-42/elFinder/issues/395

Script :

$(document).ready(function() {
    $("#editor").click(function(e) {
        var elfinder = $('#elfinder').elfinder({
            url: 'php/connector.minimal.php',
            resizable: false,
            getfile : {
                onlyURL  : true,
                multiple : false,
                folders  : false,
                oncomplete : ''
            },
            handlers: {
                dblclick: function(event, elfinderInstance) {
                    fileInfo = elfinderInstance.file(event.data.file);

                    if (fileInfo.mime != 'directory') {
                        $("#editor").val(elfinderInstance.url(event.data.file));
                        elfinderInstance.destroy();
                        //$('#elfinder').dialog('close');
                        return false; // stop elfinder
                    }
                },
                destroy: function(event, elfinderInstance) {
                    elfinder.dialog('close');

                }
            }
        }).dialog({
            title: 'filemanager',
            resizable: true,
            width: 920,
            height: 500
        });
    });
});

Html :

<div id="elfinder"></div>
<input type="text" id="editor" style="width:500px;">