`
wanglihu
  • 浏览: 918445 次
  • 性别: Icon_minigender_1
  • 来自: 黑龙江
社区版块
存档分类

使用JS设置文件上传输入框为只读属性

阅读更多
    希望给点评论什么的,也便于本人重新编辑该文章,别拍拍屁股走人啊!哈哈!如何将文件上传输入框设置为只读属性,这或许在许多程序员面前都曾有过这样的需求,但是怎么更好的解决呢?
    这里我将介绍一种简单而有效的方法。大家都知道,在struts应用中<input/>标签中使用readonly属性设置该文本输入框为只读,但是在将文件上传输入框设置为只读属性这个问题上具体怎么做呢 ?
    现在我就将自己的思路与大家一起分享,做法是通过javascript实现的,具体的思路如下:
1.采用css把file的输入框隐藏掉,代码如下:
<style type="text/css">
.file {
    width: 0px;
    border: #FFFFFF;
 }
</style>

2.新增加一个text的输入框,把其属性设置为readonly,代码如下:
<input type="text" name="fileName" readonly="">

3.通过JS把从选择文件得到的值传递给text文本框,代码如下:
<script language="javascript">
    function getFileName(){
        newsForm.fileName.value=newsForm.file.value
    }
</script>

完整代码如下所述:
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=GBK">
<title>新闻图片上传页面</title>
<style type="text/css">
.file {
    width: 0px;
    border: #FFFFFF;
}
</style>
<script language="javascript">
    function getFileName(){
        newsForm.fileName.value=newsForm.file.value
    }
</script>
</head>
<body>
<form name="newsForm" method="post" action="#">
    <input type="text" name="fileName" readonly="">
    <input name="file" type="file" class="file"  onChange="return getFileName()">
</form>
</body>
</html>


1
0
分享到:
评论
5 楼 helloqidi 2009-08-04  
在网上找了一下,加上如下属性即可

onkeydown="event.returnValue=false;" onpaste="return false"
4 楼 helloqidi 2009-08-04  
恩,谢谢了
偶试过直接用readonly属性或用display隐藏等都不行
3 楼 liqiuxi 2009-05-07  
思路不错。
2 楼 wanglihu 2008-09-17  
有啥不清楚的,可以一起交流!
1 楼 daoyongyu 2008-09-17  
谢谢,上个礼拜正做了一个项目是文件上传,就需要用到你这个咚咚!

相关推荐

    怎样让input type=file 只读,并能实现文件上传

    3. **JavaScript 的作用**:通过 JavaScript 可以实现动态控制表单元素的行为,包括设置只读属性等。 #### 二、HTML 实现 首先,我们来看一个基本的 HTML 结构: ```html 上传 ``` 在这个示例中,我们有一...

    清空input类型为file的value属性值的方法

    另外一种较为温和的方法是通过设置`input`元素的`value`属性为空字符串,即使它被标记为只读。对于大多数现代浏览器,这样设置并不会对页面造成任何问题。例如: ```javascript function clearFileInputValue...

    HTML5表单中input元素及属性.pdf

    - `file`: 文件域,允许用户选择本地文件上传。 2. **其他属性**: - `name`: 定义输入元素的名称,用于区分和识别不同输入控件。 - `value`: 设置输入控件的默认值。 - `size`: 设置输入框在页面上的宽度。 -...

    input值总结

    10. `file`:让用户选择本地文件上传。 二、`value`属性 `value`属性用于设定输入框的初始值,或者对于`&lt;input type="button"&gt;`和`&lt;input type="submit"&gt;`来说,它是按钮上显示的文本。 三、表单验证 HTML5引入了...

    input 标签的属性

    - **type**: 设置为"text"表示这是一个文本输入框。 - **name**: 为输入框指定一个名称,提交表单时将以此名称作为键值对中的键。 - **size**: 定义输入框的宽度(以字符为单位)。 - **maxlength**: 限制用户可以...

    js 获取、清空input type="file"的值示例代码

    - 文件上传控件设计为只读属性是为了防止网页脚本通过修改`value`属性来任意上传用户电脑上的文件,这会构成严重的安全风险。 - 如果网页能够随意地读取或修改用户的文件路径,那么它可能会上传用户的敏感文件,给...

    bootstrap 固定文本框

    要使用Jasny Bootstrap的文件上传组件,首先确保在项目中引入了Jasny Bootstrap的相关CSS和JS文件。然后,可以这样创建一个文件上传组件: ```html 浏览... ``` 这里,`class="input-group-btn"`和`...

    Java struts html 标签

    - **Enctype**: 指定表单数据编码类型,默认为 `application/x-www-form-urlencoded`,当表单中包含文件上传时,需设置为 `multipart/form-data`。 - **Style**: 可以为表单元素指定CSS样式。 - **StyleClass**: ...

    js css面试题

    - `readonly`:只读属性,用户无法修改输入框的值,但可以选中、复制和高亮显示内容。 - `disable`:禁用属性,不仅阻止用户编辑,还禁止选中、复制和高亮显示,同时会使该元素在表单提交时不发送数据。 4. ...

    使用HTML开发商业网站-表单控件-input课件.pptx

    除了上述属性外,还有其他一些控制输入行为的属性,例如 `readonly` 使输入框变为只读,`disabled` 禁用输入框,`required` 指定该输入为必填,`pattern` 定义输入值的模式等。在HTML5中,`&lt;input&gt;` 控件增加了更多...

    INPUT的TYPE用法

    `value`属性预设了输入框的初始值,`readonly`属性则使输入框变为只读状态,用户无法修改其中的任何内容。 示例代码: ```html your name: 默认为30宽,限制为20"&gt; 只可阅读"&gt; ``` ### 2. `type=...

    KindEditor手册

    - **demo-15.html**(只读模式):展示如何将编辑器设置为只读模式。 - **demo-16.html**(全屏模式):演示如何进入和退出全屏模式。 - **demo-17.html**(自定义插件-插入HTML、CLASS样式):展示如何使用自定义...

    DIV+CSS结构的主页制作.pptx

    10. `file`:创建文件上传控件,允许用户选择本地文件。 11. `email`:验证输入为有效的电子邮件地址格式。 12. `url`:验证输入为有效的URL地址。 13. `number`:创建数字输入框,限制输入为整数或浮点数。 14. `...

    Editor手册

    2. **文件上传**:将解压缩后的文件上传至您的网站服务器上,例如:`http://您的域名/editor/`。 3. **TEXTAREA设置**:在需要显示编辑器的位置添加一个`&lt;textarea&gt;`标签,并设置唯一的`id`属性。建议也设置宽度和...

    javaWeb学习笔记

    - `file`: 文件上传。 - `hidden`: 隐藏字段。 - `image`: 图像形式的提交按钮。 - `button`: 普通按钮。 - `email`: 电子邮件输入框。 - `url`: URL输入框。 - `tel`: 电话号码输入框。 - `number`: 数字...

    input资源的格式

    - `readonly`: 如果设置此属性,则表示该输入框只读,用户不能修改其中的内容。 **示例代码:** ```html your name: 初始宽度为30长度为20"&gt; 只读状态"&gt; ``` ##### 2. `type="password"` 用于收集...

    Form元素总结.doc

    10. `file`:文件上传。 11. `multiple`:允许选择多个文件(仅对`file`类型有效)。 12. `checkbox`、`radio`:多选和单选按钮,`checked`属性用于预设选项。 **Input属性** 1. `type`:定义输入类型。 2. `name`...

    html的表单注册信息的一部分啊.txt

    - **`id="xm"`**:为输入框分配一个唯一的ID,方便使用CSS或JavaScript进行定位。 - **`readonly="readonly"`**:表示这个输入框是只读的,用户不能修改其内容。 #### 3.3 密码框 ```html &lt;tr&gt;&lt;td&gt;&lt;label for="mm"&gt;...

    今日内容介绍2

    2. `&lt;input type="text"&gt;`:创建文本输入框,`name`属性用于标识输入项,`size`和`maxlength`控制输入框大小和最大字符数,`readonly`使输入框只读,`placeholder`设置提示文字。 3. `&lt;input type="password"&gt;`:...

    HTML-forms:表单属性和ex

    4. `enctype`属性:当`method`为`post`时,此属性定义数据编码类型,例如`application/x-www-form-urlencoded`(默认)或`multipart/form-data`(用于文件上传)。 5. `name`属性:为表单提供一个唯一标识符,方便...

Global site tag (gtag.js) - Google Analytics