小编典典

jQuery:模拟点击 在Firefox中无法使用?

html

我有一个看起来像这样的网页

<html>
    <head>
        <title>File Upload Click Test</title>
        <script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.3.2/jquery.min.js"></script>
    </head>
    <body>
        <div onclick="$('input[type=file]').click()" >CLICK SIMULATOR</div>
        <input type="file"></input>
    </body>
</html>

我的目标是让 div文件输入_上引发click事件,这似乎完全符合我在IE和Chrome中的预期,但在Firefox中不起作用(当您单击Firefox时未打开文件浏览器) _div)。

有没有办法让它在FF中工作?


阅读 305

收藏
2020-05-10

共1个答案

小编典典

有没有办法让它在FF中工作?

不,它在大多数常见版本的IE中也不起作用。IE将打开该对话框,但是一旦选择了该文件,该窗体将不会实际提交。

放弃希望。伪造文件上传框的唯一方法是使用透明技术,实际上根本不建议这样做,因为浏览器可能会在内部对文件上传框进行不同的布局(甚至提供不包含“浏览”对话框的文件上传控件),很有可能导致您无法使用表格。

了解喜欢灰色文件上传字段,或使用渐进增强功能将其替换为Flash(如果可用)。

2020-05-10