造型输入类型=“文件”。如何显示文件路径? [英] Styling the input type="file". How do I display the file path?

查看:192
本文介绍了造型输入类型=“文件”。如何显示文件路径?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我一直在试图设计一个输入类型=文件字段。
我的按钮是风格的,但我似乎无法弄清楚如何让用户选择文件上传时显示的文件路径/文件。
有人可以帮忙吗?

pre $ < form action =method =POSTenctype =multipart /格式数据>
< div class =fileupload-buttonbar>
< label class =file-upload>< span>上传....< / span>< input name =uploadfiletype =file> < /标签>
< / div>
< / form>

CSS ...

  .file-upload {
overflow:hidden;
display:inline-block;
position:relative;
vertical-align:middle;
text-align:center;
颜色:#fff;
border:2px solid#707070;
背景:#A0A0A0;
-moz-border-radius:8px;
-webkit-border-radius:8px;
border-radius:8px;
text-shadow:#000 1px 1px 4px;
cursor:pointer;
}
.file-upload:hover {
background:#2FA2FF;
}
.file-upload.focus {
outline:2px solid yellow;
}
.file-upload input {
position:absolute;
top:0;
剩下:0;
保证金:0;
font-size:12px;
opacity:0;
filter:alpha(opacity = 0);
z-index:-1;
}
.file-upload span {
position:absolute;
top:0;
剩下:0;
display:inline-block;
padding-top:.45em;
}
.file-upload {height:38px; }
.file-upload,
.file-upload span {width:160px; }
.file-upload-status {
margin-left:10px;
vertical-align:middle;
padding:7px 11px;
font-weight:bold;
font-size:16px;
颜色:#888;
背景:#f8f8f8;
border:3px solid #ddd;

code






$我的代码在这里
http://jsfiddle.net/hjNEC/

解决方案

添加一个更改事件到输入字段,然后得到它的<$ c

$例子(使用jQuery):

<$ p $ ()函数(){
var fileName = $(this).val();
alert(){code> $('input [name =uploadfile]' fileName);
});

DEMO: http://jsfiddle.net/hjNEC/2/



编辑:由于输入字段是隐藏,文件名是其中的一部分,你必须在页面上显示 fileName


I have been trying to style an input type="file" field. My button is styled but I can't seem to figure out how to get the filepath/file to show when the user selects the file to upload. Can anyone out there help?

<form action="" method="POST" enctype="multipart/form-data">
    <div class="fileupload-buttonbar">
        <label class="file-upload"><span>Upload....</span><input name="uploadfile" type="file"> </label>    
    </div>
</form>

The CSS...

.file-upload {
    overflow: hidden;
    display: inline-block;
    position: relative;    
    vertical-align: middle;
    text-align: center;
    color: #fff;
    border: 2px solid #707070;
    background: #A0A0A0;
    -moz-border-radius: 8px;
    -webkit-border-radius: 8px;
    border-radius: 8px;
    text-shadow: #000 1px 1px 4px;
    cursor:pointer;
}
.file-upload:hover {
    background: #2FA2FF;
}
.file-upload.focus {
    outline: 2px solid yellow;
}
.file-upload input {
    position: absolute;
    top: 0;
    left: 0;
    margin: 0;
    font-size: 12px;
    opacity: 0;
    filter: alpha(opacity=0);
    z-index:-1;
}
.file-upload span {
    position: absolute;
    top: 0;
    left: 0;
    display: inline-block;
    padding-top: .45em;
}
.file-upload { height: 38px; }
.file-upload,
.file-upload span { width: 160px; }    
.file-upload-status {
    margin-left: 10px;
    vertical-align: middle;
    padding: 7px 11px;
    font-weight: bold;    
    font-size: 16px;
    color: #888;
    background: #f8f8f8;
    border: 3px solid #ddd;
}

My code is here http://jsfiddle.net/hjNEC/

解决方案

Add a change event to the input field, and then just get it's .value.

Example (using jQuery):

$('input[name="uploadfile"]').change(function(){
    var fileName = $(this).val();
    alert(fileName);
});

DEMO: http://jsfiddle.net/hjNEC/2/

EDIT: Since the input field is hidden, and the file name is part of that, you're gonna have to display fileName on the page yourself.

这篇关于造型输入类型=“文件”。如何显示文件路径?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆