<style type="text/css">
        .delete_attach
        {
            padding-left: 18px;
            background: url(../image/delete.png) no-repeat left top;
            margin-left: 7px;
            width: 90px;
            color: #002f76;
        }
        .add_attach
        {
            padding-left: 22px;
            background: url(../image/add.png) no-repeat left center;
            width: 90px;
            color: #002f76;
        }
    </style>
    <script type="text/javascript">
        var MAXFILES = 10;        //文件计数器
        var fileCount = 0;
        function addAttach(noAlert) {
            if (fileCount >= MAXFILES && !noAlert) { alert("最多只能添加" + MAXFILES + "个附件!"); return; }
            var fileSectionDiv = document.getElementById("files");
            var fileItemDiv = document.createElement("div");
            fileCount++;
            var content = "<input type='file' onchange='return addAttach(true);' id=='fileUpload'" + fileCount + " name='fileUpload'" + fileCount + ">&nbsp;<a href='#' onclick='return delAttach(\"" + fileCount + "\")' class='delete_attach' >移除附件</a>";
            fileItemDiv.id = "fileItemDiv" + fileCount;
            fileItemDiv.innerHTML = content;
            fileSectionDiv.appendChild(fileItemDiv);
            return false;
        }

function delAttach(fileIndex) {
            var fileSectionDiv = document.getElementById("files");
            var fileItemDiv = document.getElementById("fileItemDiv" + fileIndex);
            fileSectionDiv.removeChild(fileItemDiv);
            fileCount--;
            return false;
        }   
    </script>

<form id="form1" runat="server" method="post" enctype="multipart/form-data">

<a id="addAttach_a" onclick="return addAttach(false);" href="#" class="add_attach">添加附件</a>
                            <div id="files" runat="server">
                            </div>

</form>

string file = "Files";
            string path = Server.MapPath(file);
            if (!System.IO.Directory.Exists(path))//判断文件夹是否已经存在
            {
                System.IO.Directory.CreateDirectory(path);//创建文件夹
            }
            for (int index = 0; index < Request.Files.Count; index++)
            {
                if (!string.IsNullOrEmpty(Request.Files[index].FileName))
                {
                    string NewName = DateTime.Now.ToString("yyyyMMddHHmmss") + rd.Next(10000, 99999);
                    string Extension = Path.GetExtension(Request.Files[index].FileName);
                    Request.Files[index].SaveAs(Path.Combine(path, NewName + Extension));
                    details.Add(new AdvertiseDetail
                    {
                        Id = Utils.CreateGUID(),
                        FileName = file,
                        NewName = NewName + Extension,
                        OldName = System.IO.Path.GetFileName(Request.Files[index].FileName),
                        CreatedByID = "1001",
                        CreatedDate = DateTime.Now,
                        LastModifiedByID = "1001",
                        LastModifiedDate = DateTime.Now
                    });
                }
            }

动态添加input标签的更多相关文章

  1. easyui 动态添加input标签

    动态添加easyui控件<input class=" easyui-textbox" > 这样是无效的,因为easyui没有实时监控,所以必须动态渲染$.parser. ...

  2. js获取不到动态添加的标签的值的解决方法

    遇到了js无法获得动态添加的标签的值,百度了一番,最后自己解决了问题,但是原理现在还不怎么明确. $("input[id='txtAttValue']").each(functio ...

  3. ThinkPHP框架下,给jq动态添加的标签添加点击事件移除标签

    jq移除标签主要就是$("#要移除的id").remove();不再赘述,这里要提醒的是jq中动态添加标签后怎样添加点击事件.一般的jq添加点击事件是用这种方法$("#i ...

  4. jQuery动态添加li标签并添加属性和绑定事件

    代码如下: <%@page import="java.util.ArrayList"%> <%@ page language="java" c ...

  5. js JQ动态添加div标签

    function renderList(data){ var str = ''; for(var i = 0; i < data.length; i++){ // 动态添加li str += ' ...

  6. JS从后台获取数据,前台动态添加tr标签中的td标签

    功能描述: 要求从后台查询该省份的所有城市,然后动态的再前台固定的tr标签中添加相应的td标签来展示城市基本信息: 文章目录 #一.前台jsp及js源码 jsp:在固定的tr标签中添加一个id,通过j ...

  7. MyBatis动态添加—trim标签

    做添加时,部分字段有值,没值的字段不添加,这就是动态添加,使用 trim 标签就可以实现. <insert id="insertSysUser" parameterType= ...

  8. JS动态添加的标签无法绑定事件解决方案~~~

    今天用ajax实现动态插入数据时发现监听一直不起作用,一样的代码,非动态的就可以监听实现 这是困扰了我近一个小时的bug,后面才理解到可能是动态插入导致的! 看了看网上的解决方案,似乎都不太通俗,讲的 ...

  9. 利用jQuery动态添加input输入框,并且获取他的值

    动态添加 <%@ page language="java" contentType="text/html; charset=UTF-8" pageEnco ...

随机推荐

  1. iOS开发项目之MVC与MVVM

    MVC MVC,Model-View-Controller,我们从这个古老而经典的设计模式入手.采用 MVC 这个架构的最大的优点在于其概念简单,易于理解,几乎任何一个程序员都会有所了解,几乎每一所计 ...

  2. 设置maven默认的JDK版本

    在pom文件中添加如下 : <build> <plugins> <plugin> <groupId>org.apache.maven.plugins&l ...

  3. 每天一个 Linux 命令(14):head 命令

    head 与 tail 就像它的名字一样的浅显易懂,它是用来显示开头或结尾某个数量的文字区块,head 用来显示档案的开头至标准输出中,而 tail 想当然尔就是看档案的结尾. 1.命令格式: hea ...

  4. VM12.1.1 下载 序列号

    VF5XA-FNDDJ-085GZ-4NXZ9-N20E6UC5MR-8NE16-H81WY-R7QGV-QG2D8ZG1WH-ATY96-H80QP-X7PEX-Y30V4AA3E0-0VDE1-0 ...

  5. Converter转换器使用

    package com.xu.javabean; import java.lang.reflect.InvocationTargetException; import java.util.Date; ...

  6. Python-3 语法

    #1 Tab键: 1)控制缩进 2)IDLE智能补全 #2 =等号: 1)=:表示赋值 2)==:表示判断 #3 流程图: print('..........小甲鱼_1..........') tem ...

  7. STL之序列式容器list与forward_list

    List (双向链表) 与 forwardlist (单向链表) 算是非常基础的数据结构了,这里只是简单介绍下其结构及应用. 以list为例: 其节点模板: template <class T& ...

  8. IntelliJ IDEA 自动化工具安装并添加自动化测试框架

    IntelliJ IDEA是一个用于开发人员开发和测试人员自动化测试的测试工具,类似于eclipse. 优点:插件多自身可以携带,自身携带cucumber自动化测试框架,类似于junit一样 缺点:r ...

  9. 【转】C#大文件读取和查询--内存映射

    笔者最近需要快速查询日志文件,文件大小在4G以上. 需求如下: 1.读取4G左右大小的文件中的指定行,程序运行占用内存不超过500M. 2.希望查询1G以内容,能控制在20s左右. 刚开始觉得这个应该 ...

  10. git 撤销commit

    如果不小心commit了一个不需要commit的文件,可以对其进行撤销. 先使用git log 查看 commit日志 commit 422bc088a7d6c5429f1d0760d008d86c5 ...