$("input[name=fileString]").change(function() {
//var names = []
for (var i = 0 i < $(this).get(0).files.length ++i) {
// names.push($(this).get(0).files[i].name)
//console.log($(this).get(0).files[i].mozFullPath)
//方式一:
var filePath = $(this).val()
console.log(filePath)
//方式二:
alert($('input[type=file]').val())
}
//console.log(names)
//方式三:
alert($("input[name=fileString]").val())
})
</script>
注意:以上方式取到的都是文件的伪路径,由于浏览器的安全策略,Chrome浏览器及Chrome内核的浏览器是不可能获取文件在本地的真实路径的。IE浏览器可以通过设置安全级别,能获取到真实路径。
javascript获取<input type="file" />文件的路径:function getPath(obj) {
if (obj) {
if (window.navigator.userAgent.indexOf("MSIE") >= 1) {
obj.select()
return document.selection.createRange().text
}
else if (window.navigator.userAgent.indexOf("Firefox") >= 1) {
if (obj.files) {
return obj.files.item(0).getAsDataURL()
}
return obj.value
}
return obj.value
}
}
尊敬的用户,您好!很高兴为您答疑。默认设置下,处于安全考虑,火狐是无法获取此路径的。
但是通过修改设定,可以变相实现此目的:
第一步:打开“about:config”页面,查找“signed.applets.codebase_principal_support”属性,将其值设置为true。
设为TRUE
第二步:在javascript中采用以下代码进行获取:
复制内容到剪贴板
代码:
function getValueFF(id){
var ip = document.getElementById(id)
if (ip.files) {
//ffx3 - try to have access to full path
try {
netscape.security.PrivilegeManager.enablePrivilege( 'UniversalFileRead' )
}
catch (err) {
//need to set signed.applets.codebase_principal_support to true
}
}
return ip.value
}
但是此方案对于面向大众的网站意义不大。
希望我的回答对您有所帮助,如有疑问,欢迎继续咨询我们。