jquery/js 得到file的value

无论用什么方法,在前端得到图上的值,谢谢了!... 无论用什么方法,在前端得到图上的值,谢谢了! 展开
 我来答
草牧莺飞
推荐于2017-09-14 · 超过21用户采纳过TA的回答
知道答主
回答量:31
采纳率:100%
帮助的人:56.3万
展开全部
技术上无法实现。文件输入框 input[file] 是一种特殊的input,不能被赋值,也不能被javascript取值,只能随表单提交,而且随表单提交也不是这个值,而是file路径所指向的文件本身。

这是浏览器安全原因所限制的,如果可以取值和赋值的话,那么javascript就可以获取你电脑上的存储的文件路径了,这是很危险的。
更多追问追答
追问
那有没有替代方案可以实现?只要不刷新页面,什么方法都行
追答
如果你想要得到的是路径地址,也就是图片上的 D:\project**** 的话,没有任何办法。ie和firefox读file的值都是空值,chrome读的是 c:\fakepath\文件名 也就是chrome能读到文件名,但是没法得到路径。

点选文件这个动作(弹出文件管理器选择文件)是浏览器控制的,只有file的input才能触发这个动作,所以没有办法绕过它,但是它又是不能被取值的。你只能用普通的text的input来让用户自己写文件地址。但是同样的,你知道这个文件地址,因为没办法给file input赋值,所以也没办法让用户上传这个文件。。。

总之是无解的。。。Flash和Sliver Light对于文件选取都是和浏览器一样的处理方式,所以没有任何办法得到这个路径的。。
当我成回忆
2011-09-07 · TA获得超过577个赞
知道小有建树答主
回答量:1155
采纳率:0%
帮助的人:785万
展开全部
var file1 = document.getElementById("Viediofile");
x.PlayerFileName = file1.value;
这样你取不到你来找我!我都用过了,赋值给控件!
追问
x.PlayerFileName是什么啊?
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
flloor
2011-09-07 · TA获得超过360个赞
知道小有建树答主
回答量:196
采纳率:0%
帮助的人:215万
展开全部
document.getElementById(“input type=file的id”).value
追问
不行的,这样得到的不是真实路径,浏览器处理过的。
追答
浏览器安全原因ie里是可以设置的
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
手机用户39433
2011-09-09 · TA获得超过186个赞
知道答主
回答量:457
采纳率:0%
帮助的人:297万
展开全部
修改很麻烦
或者换一个吧
这里有一个图片放大镜效果
可以试试
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式