【问题标题】:How to get folder name with "input file webkitdirectory"?如何使用“输入文件 webkitdirectory”获取文件夹名称?
【发布时间】:2015-07-14 11:14:05
【问题描述】:
 <head>
    <script type="text/javascript">
        function GetFileInfo () {
            var fileInput = document.getElementById ("ctrl");
            document.getElementById("Directory").value = fileInput.val;

        }
    </script>
    </head>
    <body onload="GetFileInfo ()">
        <input type="file" id="ctrl" webkitdirectory directory multiple size="60" onchange="GetFileInfo ()" />
        <div id="info" style="margin-top:30px"></div>
        <input type="textarea" id="Directory" name="Directory" value="">
    </body>

如何为Directory 分配选择文件夹名称?

【问题讨论】:

  • 你想在你的文本区域中输出什么?这是一个“多个”文件输入。所以你想要所有选定的文件?只有一个文件?所选文件/文件的基本路径?

标签: php file select directory


【解决方案1】:

我通过遍历文件得到它。请参阅下面代码中的 var 文件夹。

    files = e.target.files;
    var allFiles = new Array();
    for (var i = 0, len = files.length; i < len; i++) {
        allFiles[i] = new Array();
        file = files[i];
        extension = file.name.split(".").pop();
        var relativePath = file.webkitRelativePath;
        var fullPath = file.path;
        var folder = relativePath.split("/");
        var format = folder[1];

        if (format == 'mobile' || format == 'desktop') {

            var folderBits = folder[0].split("_");
            fileName = "None";
            if (fileName) {
                fileName = stripSpaces(file.name);
            }
            if (file.size > 0) {
                size = Math.floor(file.size/1024 * 100)/100;
            }

            var rundates; 
            var publisher;
            var client;
            var campaign;
            var creative;
            var jobnumber;

            for (var b = 0, bits = folderBits.length; b < bits; b++) {
                switch(b) {
                    case 0:
                        rundates = folderBits[b];
                        break;
                    case 1:
                        publisher = folderBits[b];
                        break;
                    case 2:
                        client = folderBits[b];
                        break;
                    case 3:
                        campaign = folderBits[b];
                        break;
                    case 4:
                        creative = folderBits[b];
                        break;
                    case 5:
                        jobnumber = folderBits[b];
                        break;
                    default:

                }

            }

            allFiles[i] = {
                rundates: rundates, 
                publisher: publisher, 
                format: format, 
                client: client, 
                campaign: campaign, 
                creative: creative, 
                jobnumber: jobnumber, 
                filename: fileName, 
                size: size, 

            };
        }

    }

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-04-02
    • 2012-05-23
    • 2021-02-03
    相关资源
    最近更新 更多