jsp页面如何用js获取上传文件的真实路径,不通过修改浏览器设置的方式

JavaScript09

jsp页面如何用js获取上传文件的真实路径,不通过修改浏览器设置的方式,第1张

你应该回去找提供你这段代码的网页,看一下getPath函数的参数obj是什么,输入参数有什么要求。

就这段代码看,obj应该是一个对象,并且这个对象有select()方法;而恰好jQuery对象就有select()方法,有可能(仅仅是有可能)你需要将obj包装成jQuery对象后,再作为getPath函数的参数代入试试。

提示:

dom对象转为jQuery对象:有dom元素el,通过$(el)操作就可以转为jQuery对象

无法获取本地文件的绝对路径,这里涉及到一个浏览器安全问题。

<input type="file" onchang="javascript:changeFile()" />

// 选择文件

function changeFile () {

    var e = this

    // 修正IE8下,文件上传异常

    var files = e.files

    if (files == undefined) {

        return false

    }

    // 取得选择文件相关数据信息

    var file = files[0], fileName = file.name, fileSize = file.size

    // 获取文件后缀名

    var fileType = fileName.substr(fileName.lastIndexOf(".")).toLowerCase()

}

如果你指的是C:\Users\Public\Pictures\Sample Pictures\沙漠.jpg类似这种本地路径,是不可能的。因为文件路径也属于用户的敏感信息,js这种web语言对本机文件的处理非常有限,目的也是为了避免安全以及隐私问题。

<input type="file />控件中,你是不能获取到本机完整路径的。而且正常情况下也没有这么做的必要,如果你非要或者完整路径,你应该想想你们的需求是不是有问题。