无法限制其他文件在 mvc 中的 ElFinder 中上传

问题描述

我正在使用 asp.net mvc 并在我的项目中使用 elfinder 上传图像。 我是使用 elfinder 的新手。 我的问题是,如果照片名称重复,它会替换新照片。我不想那样。 我没有在 asp.net mvc 上找到这个问题的任何解决方案。 这是我的代码

<script>
    function buildelfinder(obj) {
        var myCommands = elfinder.prototype._options.commands;
        var disabled = ['extract','archive','help','select'];
        $.each(disabled,function (i,cmd) {
            (idx = $.inArray(cmd,myCommands)) !== -1 && myCommands.splice(idx,1);
        });
        var selectedFile = null;
        var options = {
            url: '/connector',commands: myCommands,lang: 'en',getFileCallback: function (file) {
                $('#open-el-modal').modal('hide');
                obj.val("~/Content/" + file.path);
            },uiOptions: {
                toolbar: [
                    ['back','forward'],['reload'],['home','up'],['mkdir','mkfile','upload'],['open','download'],['info'],['quicklook'],['copy','cut','paste'],['rm'],['duplicate','rename','edit','resize'],['view','sort']
                ]
            },handlers: {
                select: function (event,elfinderInstance) {

                    if (event.data.selected.length == 1) {
                        var item = $('#' + event.data.selected[0]);
                        if (!item.hasClass('directory')) {
                            selectedFile = event.data.selected[0];
                            //$('#elfinder-selectFile').show();
                            return;
                        }
                    }
                    $('#elfinder-selectFile').hide();
                    selectedFile = null;
                }
            }
        };
        $('#elfinder').elfinder(options).elfinder('instance');

        $('.elfinder-toolbar:first').append('<div class="ui-widget-content ui-corner-all elfinder-buttonset" id="elfinder-selectFile" style="display:none; float:right;">' +
        '<div class="ui-state-default elfinder-button" title="Select" style="width: 100px;"></div>');
        $('#elfinder-selectFile').click(function () {
            if (selectedFile != null)
                $.post('files/selectFile',{ target: selectedFile },function (response) {
                    alert(response);
                });

        });
    }

    $('.open-elfinder').live('click',function () {
        var editor = $(this);

        $('#open-el-modal').modal('show');
        buildelfinder(editor);
    });
</script>

解决方法

我找到了答案,但遇到了另一个问题。在这段代码中,我将“UploadOverwrite”更改为 False 并且 Overwrite 已被禁用:

 driver.AddRoot(new Root(new DirectoryInfo(Server.MapPath("~/Content/img")))
                {
                    IsLocked = false,IsReadOnly = false,IsShowOnly = false,ThumbnailsStorage = thumbsStorage,ThumbnailsUrl = "/Thumbnails/",MaxUploadSizeInMb = 1000,UploadOverwrite = false,});

但是 elfinder 创建了另一个扩展名为“copy”的文件,并且不会刷新。

如果这个文件没有创建或者刷新了怎么办?

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...