Lynx浏览器中<input type="file"/>控件的文件选择功能问题咨询
Lynx浏览器中控件的文件选择功能问题咨询
你好,我来帮你梳理下Lynx浏览器里遇到的这个文件选择控件问题~
首先得明确Lynx的核心限制:它作为老牌纯文本浏览器,对HTML标准的支持更偏向早期规范,和现代浏览器的兼容性有明显差异。你碰到的Bad HTML!! No form action defined. 报错,本质是因为Lynx要求<input type="file"/>必须被包裹在带有action属性的<form>标签里才能正常识别和处理,哪怕现代浏览器已经支持脱离表单单独使用这个控件。
接下来聊聊你关心的「能不能通过输入文件全路径来选择文件」的问题:
- 如果页面里的
<input type="file"/>没有被放在带action的表单中,Lynx根本不会把它当成可交互的文件上传控件,自然也不会给你输入路径的入口,这就是为什么你点按钮只得到报错的原因。 - 要是这个控件是在符合要求的表单(带
action属性)里,Lynx在你触发它时,会跳出文本提示让你输入本地文件的完整路径(比如/home/liamf/documents/test.txt),这是它唯一的文件选择方式——毕竟是纯文本浏览器,没有图形化的文件选择对话框。
针对你现在的情况,给你两个可行的思路:
- 如果你能修改这个网页的代码,最简单的方式就是给
<input type="file"/>套上一个带有action属性的<form>标签,哪怕action的值只是空字符串或者当前页面的URL,Lynx就能正常识别这个控件了。 - 要是这是别人的网页没法修改代码,那很遗憾,Lynx本身的限制导致你没法直接使用这个无表单的文件上传控件,只能换用其他支持HTML5无表单文件上传的浏览器来完成操作。
备注:内容来源于stack exchange,提问作者LiamF
相关产品推荐
相关产品推荐

