0

ファイルを選択した後、elfinder を自動的に閉じる必要があります。

<script>
    function upload_slider(){
        var f = $('#elfinder').elfinder({
            url : 'plugins/elfinder/php/connector.php',
            height: 490,
            docked: false,
            dialog: { width: 400, modal: true },
            closeOnEditorCallback: true,
            getFileCallback: function(url) {
                $('#new_file').val(url);
                // CLOSE ELFINDER HERE
            }
        }).elfinder('instance');
    }
</script>

<input type="text" id="new_file" />
<input type="button" onclick="upload_slider();" value="Select File"  />
<div id="elfinder"></div>

これを行う方法?適切な方法が見つからないため、多くの場所を検索しました。

4

3 に答える 3

1

答えは近いものでしたが、ページをリロードする必要はありませんでした。私たちがやっていることは、elfinder div を削除することです...したがって、最初にそれを作成するコードがあれば、それを取り戻すためにリロードする必要はないように思えます。

<div id="elfcontain"></div>

---------------------------------------------------------------------------

function filebrowser() {
$('#elfcontain').append('<div id="elfinder"></div>');
    var elf = $('#elfinder').elfinder({     
    url: 'data/connector/connector.php',  // connector URL (REQUIRED)        
    getFileCallback: function(url) {
        console.log(url);
        $('#elfinder').remove();
        return url;
    }
    }).elfinder('instance');
}

このような状況に陥った人への参考までに。毎回 elfinder div を作成するので、リロードしなくても心ゆくまで非表示/表示できるようになりました。

于 2014-06-09T18:34:46.683 に答える
0

私はまったく同じ問題を抱えていたので、数時間後に解決策を見つけました。問題なく動作していると思います。

$().ready(function() {
$('#select-button').click(function(){
    var f = $('#elfinder').elfinder({
        url : 'plugins/elfinder/php/connector.php',
        height: 490,
        docked: false,
        dialog: { width: 400, modal: true },
        closeOnEditorCallback: true,
        getFileCallback: function(url) {
            $('#fileurl').val(url);
            // CLOSE ELFINDER HERE
            $('#elfinder').remove();  //remove Elfinder
            location.reload();   //reload Page for second selection
        }
    }).elfinder('instance');
});

}))

于 2013-12-25T16:35:07.837 に答える