Javascript 使用菜单项触发文件输入元素
我正在使用基本的Blueimp文件上传插件 我的HTML看起来像:Javascript 使用菜单项触发文件输入元素,javascript,jquery,Javascript,Jquery,我正在使用基本的Blueimp文件上传插件 我的HTML看起来像: <input id="fileupload" class="button-default" type="file" name="files[]" data-url="/php/upload.php" multiple> 现在,由于页面有一个菜单,我想隐藏文件输入框,并使用一个菜单项来触发文件上传 菜单项有一个“item5”类,因此我尝试: $('.item5').bind("click", subir); 但是
<input id="fileupload" class="button-default" type="file" name="files[]" data-url="/php/upload.php" multiple>
现在,由于页面有一个菜单,我想隐藏文件输入框,并使用一个菜单项来触发文件上传
菜单项有一个“item5”类,因此我尝试:
$('.item5').bind("click", subir);
但是函数subir不会被触发。直接与文件输入一起使用时效果良好
提前感谢您的帮助
<div onclick="uploadForm.upload.click()" style="width: 100px; height: 100px; background: red;"></div>
<form name="uploadForm">
<input name="upload" id="uplaod" type="file" style="display: none"; />
</form>
几乎所有浏览器都支持这一点。但是opera在通过将display设置为none来隐藏输入字段时确实存在一些问题
<div id="menu" style="width: 100px; height: 100px; background: red;"></div>
<form name="uf">
<input name="upload" id="upload" type="file" style="visibility: hidden;" />
</form>
<script type="text/javascript">
document.getElementById("menu").onclick = function (evt) {
document.getElementById("upload").click();
}
</script>
您可以使用javascript应用相同的逻辑使其工作。以及将可见性设置为“隐藏”,而不是将“显示”设置为“无”
<div id="menu" style="width: 100px; height: 100px; background: red;"></div>
<form name="uf">
<input name="upload" id="upload" type="file" style="visibility: hidden;" />
</form>
<script type="text/javascript">
document.getElementById("menu").onclick = function (evt) {
document.getElementById("upload").click();
}
</script>
document.getElementById(“菜单”).onclick=function(evt){
document.getElementById(“上载”)。单击();
}
Try$('fileupload')。触发('click')
Try$('fileupload')。单击()