js文件选择框,我选好文件后,取不到正确路径, alert(document.getElementById('filepath').value);
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了js文件选择框,我选好文件后,取不到正确路径, alert(document.getElementById('filepath').value);相关的知识,希望对你有一定的参考价值。
alert(document.getElementById('filepath').value);
取到的路径是C:\fakepath\文件名,不管怎么选文件都是这样的,怎么解决?
望大虾们看下
-----------------------------------------------------------------------解决方法》》》》
工具 -> Internet选项 -> 安全 -> 自定义级别 -> 找到“其他”中的“将本地文件上载至服务器时包含本地目录路径”,选中“启用”即可。
不过 感觉没有治本:如果别人用的电脑把IE里这项给禁用了,那不是在他的电脑上就没法运行哦??
希望各位给出办法解决,或者说应该怎么做可以避免出错,不管是提示还是其它什么办法的,谢谢!
你在js里得到就可以传回服务器了,那样用户的电脑文件目录就全部被你获得了,黑客也太容易当了。
你只要提交表单,在服务器端自然会得到文件名的。
php用 $_FILES
你print_r($_FILES);
就可以看到了追问
我java
追答类似
private void uploadFile(HttpServletRequest request, HttpServletResponse response)
try
DiskFileUpload fu = new DiskFileUpload();
// 设置最大文件尺寸,这里是4MB
fu.setSizeMax(-1);
// 设置缓冲区大小,这里是4kb
fu.setSizeThreshold(4096);
// 设置临时目录:
fu.setRepositoryPath(tempPath);
// 得到所有的文件:
List fileItems = fu.parseRequest(request);
Iterator i = fileItems.iterator();
// 依次处理每一个文件:
while (i.hasNext())
FileItem fi = (FileItem) i.next();
// 获得文件名,这个文件名包括路径:
String fileName = fi.getName();
String sep = System.getProperty("file.separator");
int index = fileName.lastIndexOf(sep);
if(index >-1)
fileName = fileName.substring(fileName.lastIndexOf(sep));
// 在这里可以记录用户和文件信息
// ...
// 写入文件,暂定文件名为a.txt,可以从fileName中提取文件名:
fi.write(new File(uploadPath + fileName));
response.setCharacterEncoding("UTF-8");
response.getWriter().println(fileName+"上传成功");
catch (Exception e)
// 可以跳转出错页面
e.printStackTrace();
<button onclick="alert(document.getElementById('filepath').value);">查看路径</button>
每次重选文件后,点击按钮查看。应该是没有问题啊
你是怎么操作的?追问
和你一样 ie浏览器,换个机器也一样,是不是某些JS限制的?还是浏览器的问题?
追答你重置一下ie浏览器的设置,再试试。我实验是ok的
参考技术B 没问题啊,只是一个定义而已嘛,但是你运行就会报错,找不到id为WindowsMediaPlayer1的节点参考技术C 有可能是浏览器的原因
以上是关于js文件选择框,我选好文件后,取不到正确路径, alert(document.getElementById('filepath').value);的主要内容,如果未能解决你的问题,请参考以下文章
js能做一个选择本地文件夹目录单位东西吗,选好了文件之后返回文件路径来
IntelliJ IDEA 文件夹重命名--解决重命名后js文件引用找不到路径报404错误