嗨,我只是想知道如何创建自己的自定义文件上传按钮,因为我能做的最好的是

而我想要实现的是

如果有这样做我会非常感激,并且我可以得到答案解释如何使用代码而不是答案与链接到允许您下载按钮或类似的网站的链接,谢谢:)
在一个表单中,我有一个文件输入皮肤用jquery和css和一个提交按钮.
<form action="#" method="POST">
<input style="width:150px" type="hidden" name="MAX_FILE_SIZE" value="40000"/>
<div class="l-input-file">
<input style="margin-bottom: 0px" type="file" id="myInput" name="myInput" size="16" />
</div>
<div><button type="submit" class="btn-black">Continuer</button></div>
</form>
Run Code Online (Sandbox Code Playgroud)
此处的问题仅出现在IE10上:选择文件后,必须单击提交按钮2次才能提交表单.
当文件输入改变但我没有帮助时,我尝试强制关注按钮.
我尝试使用jQuery触发click,
jQuery('#myInput').parents('form').find("button[type='submit']").click();
Run Code Online (Sandbox Code Playgroud)
但在第三次提交之前,我收到了2次"拒绝访问"的消息.
任何意见或建议将受到强烈赞赏.谢谢
可能重复:
如何隐藏Html文件上载中的文本字段
我正在设置一个AJAX图像上传器,允许用户选择文件,使用AJAX进行预览,然后单击提交按钮以保存他们的选择.
由于我的AJAX上传器的工作方式,即使在用户选择并正在预览图像之后,它也总是说"没有选择文件".如果用户想再试一次,我不想隐藏按钮.我知道我可以使用一些javascript在'选择文件'和'选择另一个'按钮或类似的东西之间切换,但我更喜欢只保留原始按钮,这样用户就不必点击一堆不同的纽扣.
编辑:我认为我的问题很明显,我想这不是因为我得到了亲密的选票......

单击我的自定义按钮后,下面的代码会动态创建一个文件输入,生成一个文件输入,其名称为photo [],id为photo'x'(x为变量).除了全能的IE之外,所有浏览器的代码都能正常运行.在IE中我可以单击我的自定义上传按钮添加文件,当我提交表单时,文件输入将被清除.它将提交表单,但文件输入将为空白.但它适用于其他浏览器.
这是一个错误吗?还是安全的东西?如果是的话,我该如何解决这个问题呢?
var x = 0;
addFile = function(addFileButton) {
var form = document.getElementById('form');
var box = document.createElement('input');
box.type = 'file';
box.name = 'photo[]';
box.id = 'photo' + x;
box.style.cssText = 'position:absolute; top:-200px;';
box.onchange = function() {
checkFileDup(this.value, x - 1);
};
form.appendChild(box);
jQuery("#photo" + x).trigger('click');
x++;
}
Run Code Online (Sandbox Code Playgroud)