如何在javascript中从ondrop事件获取文件URL

如何在javascript中从ondrop事件获取文件URL,javascript,jquery,Javascript,Jquery,我正在为我正在制作的上传程序运行以下代码 holder.ondrop = function (e) { e.preventDefault(); console.log(e); } 我希望用户能够将一个文件从桌面拖到web浏览器上,然后捕获它的位置,这样我就可以手动上传它(不想通过javascript进行上传)。不过,我的问题是,如何从事件中获取文件的客户端位置,以便我可以将其放入 谢谢。输入文件字段可以被视为普通输入字段,其值可以按如下方式获取 <input id="in

我正在为我正在制作的上传程序运行以下代码

holder.ondrop = function (e) {
    e.preventDefault();
    console.log(e);
}
我希望用户能够将一个文件从桌面拖到web浏览器上,然后捕获它的位置,这样我就可以手动上传它(不想通过javascript进行上传)。不过,我的问题是,如何从事件中获取文件的客户端位置,以便我可以将其放入


谢谢。

输入文件字段可以被视为普通输入字段,其值可以按如下方式获取

<input id="inputid" type="file" dropzone="..."> 

holder.ondrop = function (e) {
    e.preventDefault();
    var path = $('#inputid').val();
    //split the string at the lastIndexOf '/' to get filename 
    console.log(e);
}

holder.ondrop=功能(e){
e、 预防默认值();
var path=$('#inputid').val();
//在“/”的最后一个索引处拆分字符串以获取文件名
控制台日志(e);
}

以下是mozilla使用事件的dataTransfer对象获取文件列表的示例

我的例子是:

holder.ondrop = function (e) {
    e.preventDefault();
    if(e.dataTransfer && e.dataTransfer.files.length != 0){
        var files = e.dataTransfer.files //Array of filenames
        files[0]; //the first file in the list

        // code to place file name in field goes here...

    }else{
        // browser doesn't support drag and drop.
    }

    console.log(e);
}
使用mozilla示例,因为它比我提供的更全面