2

elFinderを使用してWebサイトに保存されているファイルにアクセスしていますが、ファイル自体に直接アクセスすることはできません。代わりに、特定のコントローラーアクションを介してそれらを要求します。そこでgetFileCallback、elFinderをオーバーライドして、カスタムURLを使用します。

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

これは、ファイルをダブルクリックする場合に最適です。ただし、ファイルを選択してelFinderツールバーの[開く]ボタンを使用した場合、このコールバックは使用されません。代わりに、ポップアップを開き、デフォルトのURLを使用しようとすると、404エラーが発生します。

ツールバーの[開く]ボタンの動作を上書きする方法はありますか?クライアントイベントAPIまたはコマンドオプションでさまざまなことを試してきましたが、Openの動作を変更するものが見つからないようです。

これを行う方法はありますか?

4

1 に答える 1

3

私がやったことは、open関数を完全にオーバーライドすることでした。

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

scriptelFinderコードをロードした後、ブロックでこれを実行するだけです。)

それが理想的かどうかはわかりません。elFinderにメジャーアップグレードがある場合は微調整が必​​要ですが、間違いなく機能しています。(これから、情報ポップアップのアンカータグなど、URLを使用する他の関数のいくつかもオーバーライドし始めました。)

于 2013-03-12T00:17:09.420 に答える