每个浏览器都有不同类型的文件输入字段按钮,这很痛苦。你可以玩一点css。这给了我一个基本的 JS 样式,没有 chrome 和 Safary 中烦人的“没有选择文件”文本:
$(document).ready(function() {
$(".your_button").css("width", "80px");
});
否则最好的解决方案是隐藏它并显示一个拦截点击的假的:
http://duckranger.com/2012/06/pretty-file-input-field-in-bootstrap/
关于如何显示文件已上传的问题,jquery文件上传的基本解决方案是检测上传完成事件并将您的一些文本替换为成功消息(确切的文件名我相信它不是可以通过现代浏览器获得):
$(".your_button").fileupload({
dataType: "json",
done: function(e, data) {
$(".place_for_your_text").text("File uploaded.");
}
});
总之,一个基本的解决方案是在您的资产中使用 javascript 来:
- 用 css 隐藏烦人的“没有选择文件的文本”。
- 将“选择文件”文本放在按钮旁边,并给它一个可以参考的类。
- 将文本替换为“文件已上传”