2017-05-09 109 views
1

大约一个星期前,我发布了一个问题,但无法得到它的答案,因为我不知道如何使用jsfiddle或codepen,但我想通了。按钮不显示菜单

我的问题是,如果你点击它周围会显示文件搜索框,这是样品按钮现在无法正常工作:

https://codepen.io/anon/pen/bWaYzJ

<label> Uploads 
    <label for="exampleFileUpload" class="button">Upload File</label> 
    <input type="file" id="exampleFileUpload" class="show-for-sr"> 
</label> 

现在如果我脱离插件从元素然后按钮再次工作。 labeldiv

回答

0

改变你的外表似乎解决您的问题,这样codepen

<div> Uploads 
<label for="exampleFileUpload" class="button">Upload File</label> 
<input type="file" id="exampleFileUpload" class="show-for-sr"> 
</div> 
+0

它的工作原理的原因在你的例子中是因为你忘记包含插件,如果你检查codepen控制台它说MultiFile不是一个函数。白色的插件工作,而不是标签使用div按钮证明工作或者甚至不单击外部按钮。 – quechon

0
<label for="exampleFileUpload" class="button">Upload File</label> 
<input type="file" id="exampleFileUpload" class="show-for-sr"> 

,使您的javascript:

$(document).ready(function(){ 
    $('#exampleFileUpload').onClick({ 
     MultiFile(); 
    }); 
}); 
+0

不能工作,我得到该代码的错误。 – quechon

0

首先,删除参考多文件源文件 - 这是导致“MultiFile不是函数”错误的原因。您需要将MultiFile直接包含在codepen的源代码中(就像您已经拥有的一样)。

其次,标签需要包装的投入,而且不能使用for属性(因为这依赖于name属性为目标,您没有设置):

<div> Uploads 
    <label class="button">Upload File 
    <input type="file" id="exampleFileUpload" class="show-for-sr" multiple> 
    </label> 
</div>