使用jquery触发文件输入/假按钮

时间:2016-12-08 10:02:53

标签: javascript jquery css

所以我有了这个按钮:

<button class="upload-button" type="button">Upload File</button> 

我用它来覆盖此默认输入/浏览按钮:

<input type="file" id="fileinput" name="uploads[]" multiple="multiple"> 

然而,当我使用这个脚本时:

$('.upload-button').on('click', function (){
    $('#upload-input').click();
});

它似乎不起作用,我想要做的是在点击假按钮后触发浏览文件,我在这里找到另一篇帖子,他们说这是因为文件输入的可见性被设置为隐藏,但当我试图将其设置为默认值时,它仍然无法正常工作。这可能是什么问题?

2 个答案:

答案 0 :(得分:2)

使用触发器:

 $('#upload-input').trigger( "click" );

答案 1 :(得分:0)

尝试点击DOM对象:

$('#upload-input')[0].click();

注意:请确保您拥有ID upload-input(看起来您需要#fileinput)。

希望这有帮助。

&#13;
&#13;
$('.upload-button').on('click', function (){
  $('#fileinput')[0].click();
});
&#13;
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<button class="upload-button" type="button">Upload File</button> 
<input type="file" id="fileinput" name="uploads[]" multiple="multiple">
&#13;
&#13;
&#13;