input file表单上传控件的动态化

2024-05-06 23:18

本文主要是介绍input file表单上传控件的动态化,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

<!--上传控件样式-->
<script  type="text/javascript" src=
"../bootstrap-fancyfile.min.js">
</script>

<link href="../bootstrap-fancyfile.min.css" rel="stylesheet" type="text/css"/>
<!--页面代码-->
<div id="mdiv">
    <div class="form-group">
        <div class="col-md-14">
            <div class="fancy-file" style="margin-left: 130px;">
                <div class="fake-file">
                    <span class="redcolor">*</span>
                    <input class="fake-input form-control" id="fileimgvaluename"
                           name="fileimgvaluename" type="text"
                           placeholder="上传缩略图"
                           style="width: 183px; height: 34px;margin-left: 15px;">
                    <button class="btn btn-primary"
                            style="margin-left:-5px;height: 34px;">
                        <i class="glyphicon glyphicon-file icon-white"></i>
                        浏览缩略图
                    </button>
                    <input type="button" class="btn btn-success closeimgfilename"
                           οnclick="javascript:addimg()" value="继续添加"
                           style="margin-left:-6px;height: 34px;">
                    </input>
                </div>
                <input class="btn-info" οnchange="fileimgvaluename.value=this.value"
                       type="file" name="fileimgname" id="fileimgname"
                       style="margin-left:190px;width: 110px;height: 34px">
            </div>
        </div>
    </div>
</div>
<script>
    jQuery(document).ready(function () {
    bindListener();//动态添加图片
    });
</script>


<!--js-->
//动态添加多张图片
// 用来绑定事件(使用unbind避免重复绑定)
var i=0;
function bindListener() {$("a[name=removelink]").unbind().click(function () {$(this).parent().parent().parent().parent().remove();
        i=i-1;
    })
}
function addimg() {i++;
    var fileimgvaluenamea="fileimgvaluenametext"+i;//这是文本域id
    var fileimgvaluenameb="fileimgvaluenamefile"+i;//这是上传id
    var a='<div class="form-group"><div class="col-md-14"> <div class="fancy-file" style="margin-left: 145px;">' +'<div class="fake-file"> <span class="redcolor">*</span><input class="fake-input form-control" id="' + fileimgvaluenamea + '"' +'name="' + fileimgvaluenamea + '" type="text" placeholder="上传缩略图" style="width: 185px; height: 34px;">' +'<button class="btn btn-primary" style="margin-left:0px;width:118px;height: 34px;"><i class="glyphicon glyphicon-file icon-white"></i>浏览缩略图 </button>' +'<a  class="btn btn-danger"  href="#" name="removelink" style="margin-left:-6px;height: 34px;">消除</a> ' +/*'<input type="button" class="btn btn-success" οnclick="javascript:addimg()" value="继续添加" style="margin-left:-6px;height: 34px;"/>' +*/
        '</div><input class="btn-info"';
    var b='type="file" name="'+fileimgvaluenameb+'" id="'+fileimgvaluenameb+'" style="margin-left:190px;width: 110px;height: 34px"/></div></div></div>';
    if(i>7){i=7;
        alert('最多只能上传8张图片');
    }else {var c="";//获取上传fileid对应的文本域id
        switch(i){case 1:c='οnchange="fileimgvaluenametext1.value=this.value"';
                break;
            case 2:c='οnchange="fileimgvaluenametext2.value=this.value"';
                break;
            case 3:c='οnchange="fileimgvaluenametext3.value=this.value"';
                break;
            case 4:c='οnchange="fileimgvaluenametext4.value=this.value"';
                break;
            case 5:c='οnchange="fileimgvaluenametext5.value=this.value"';
                break;
            case 6:c='οnchange="fileimgvaluenametext6.value=this.value"';
                break;
            case 7:c='οnchange="fileimgvaluenametext7.value=this.value"';
                break;
        }$("#mdiv").append(a+c+b);
    }
// 为新元素节点添加事件侦听器
    bindListener();
}

这篇关于input file表单上传控件的动态化的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/965663

相关文章

HTML5的input标签的`type`属性值详解和代码示例

《HTML5的input标签的`type`属性值详解和代码示例》HTML5的`input`标签提供了多种`type`属性值,用于创建不同类型的输入控件,满足用户输入的多样化需求,从文本输入、密码输入、... 目录一、引言二、文本类输入类型2.1 text2.2 password2.3 textarea(严格

input的accept属性让文件上传安全高效

《input的accept属性让文件上传安全高效》文章介绍了HTML的input文件上传`accept`属性在文件上传校验中的重要性和优势,通过使用`accept`属性,可以减少前端JavaScrip... 目录前言那个悄悄毁掉你上传体验的“常见写法”改变一切的 html 小特性:accept真正的魔法:让

java对接Pinata上传文件到IPFS全过程

《java对接Pinata上传文件到IPFS全过程》本文详细介绍了如何使用PinataAPI将文件上传到IPFS网络,首先登录Pinata官网并生成JWT令牌,然后在项目中导入OkHttp依赖并编写代... 目录1.登录2.生成令牌3.导入依赖4.编写代码5.调用接口调试China编程代码总结Pinata调用AP

Vue3 如何通过json配置生成查询表单

《Vue3如何通过json配置生成查询表单》本文给大家介绍Vue3如何通过json配置生成查询表单,本文结合实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友参考下吧... 目录功能实现背景项目代码案例功能实现背景通过vue3实现后台管理项目一定含有表格功能,通常离不开表单

Python使用FastAPI实现大文件分片上传与断点续传功能

《Python使用FastAPI实现大文件分片上传与断点续传功能》大文件直传常遇到超时、网络抖动失败、失败后只能重传的问题,分片上传+断点续传可以把大文件拆成若干小块逐个上传,并在中断后从已完成分片继... 目录一、接口设计二、服务端实现(FastAPI)2.1 运行环境2.2 目录结构建议2.3 serv

Python一次性将指定版本所有包上传PyPI镜像解决方案

《Python一次性将指定版本所有包上传PyPI镜像解决方案》本文主要介绍了一个安全、完整、可离线部署的解决方案,用于一次性准备指定Python版本的所有包,然后导出到内网环境,感兴趣的小伙伴可以跟随... 目录为什么需要这个方案完整解决方案1. 项目目录结构2. 创建智能下载脚本3. 创建包清单生成脚本4

SpringBoot+RustFS 实现文件切片极速上传的实例代码

《SpringBoot+RustFS实现文件切片极速上传的实例代码》本文介绍利用SpringBoot和RustFS构建高性能文件切片上传系统,实现大文件秒传、断点续传和分片上传等功能,具有一定的参考... 目录一、为什么选择 RustFS + SpringBoot?二、环境准备与部署2.1 安装 RustF

SpringBoot实现不同接口指定上传文件大小的具体步骤

《SpringBoot实现不同接口指定上传文件大小的具体步骤》:本文主要介绍在SpringBoot中通过自定义注解、AOP拦截和配置文件实现不同接口上传文件大小限制的方法,强调需设置全局阈值远大于... 目录一  springboot实现不同接口指定文件大小1.1 思路说明1.2 工程启动说明二 具体实施2

java中pdf模版填充表单踩坑实战记录(itextPdf、openPdf、pdfbox)

《java中pdf模版填充表单踩坑实战记录(itextPdf、openPdf、pdfbox)》:本文主要介绍java中pdf模版填充表单踩坑的相关资料,OpenPDF、iText、PDFBox是三... 目录准备Pdf模版方法1:itextpdf7填充表单(1)加入依赖(2)代码(3)遇到的问题方法2:pd

Spring Boot 结合 WxJava 实现文章上传微信公众号草稿箱与群发

《SpringBoot结合WxJava实现文章上传微信公众号草稿箱与群发》本文将详细介绍如何使用SpringBoot框架结合WxJava开发工具包,实现文章上传到微信公众号草稿箱以及群发功能,... 目录一、项目环境准备1.1 开发环境1.2 微信公众号准备二、Spring Boot 项目搭建2.1 创建