多文件上传,我想大家都比较熟了。而且网上的例子也比较多。哪么如果我们要进行的不是多文件上传,而是多条记录入库怎么办呢。我这里说的多条记录入库的意思是。多个文本框重复的情况。比如说我们在做简历添写的情况下,比如工作经历,我们可以做成动态的,他工作了几个单位,就让他点按钮,自己来增加

好了不多说了。下面把代码放上来

webForm1.aspx

<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="WebForm1.aspx.cs" Inherits="jxtDemoSMS.WebForm1" %> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" > <head runat="server"> <title></title> <mce:script language="javascript" type="text/javascript"><!-- //这里的max主要是限制一下最多可以加几个,如果不想限制可以不用 function addFile(max) { var Text1 = document.getElementsByName("Text1"); if (Text1.length == 1 && Text1[0].disabled == true) { Text1[0].disabled = false; return; } if (Text1.length < max) { var fileButton = '<br />姓名:<input id="Text1" name="Text1" type="text" />&nbsp;&nbsp;&nbsp;&nbsp;性别:<input id="Text2" name="Text2" type="text" /> <select id="Select1" name="D1"><option value="中国">中国</option><option value="美国">美国</option><option value="日本">日本</option></select>'; //alert(fileButton); document.getElementById("FileList").insertAdjacentHTML("beforeEnd",fileButton); } } //这里的方法是采用了隐藏域的方法,把得到的信息放到隐藏域里,这里分了二个,一个是用来存input的一个是用来存select的 function getNames() { var hdArea = document.getElementById("<%=hdNames.ClientID %>"); var hdArea2 = document.getElementById("<%=SelectName.ClientID %>"); var controlArea = document.getElementById("FileList"); var list = controlArea.getElementsByTagName("input"); var nameStr = ""; for (var i = 0; i < list.length; i++) { nameStr += list[i].value; nameStr += "|"; } var list2 = controlArea.getElementsByTagName("select"); var nameStr2 = ""; for (var i = 0; i < list2.length; i++) { nameStr2 += list2[i].value; nameStr2 += "|"; } hdArea.value = nameStr.substr(0, nameStr.length - 1); hdArea2.value = nameStr2.substr(0, nameStr2.length - 1); } // --></mce:script> </head> <body> <form id="form1" runat="server"> <p id="FileList"> 姓名:<input id="Text1" name="Text1" type="text" />    性别:<input id="Text2" name="Text2" type="text" /> <select id="Select1" name="D1"> <option value="中国">中国</option> <option value="美国">美国</option> <option value="日本">日本</option> </select></p> <input id="Button2" type="button" value="添加" οnclick="addFile(4)" /><asp:HiddenField ID="SelectName" runat="server" /> <asp:HiddenField ID="hdNames" runat="server" /> <br><br><asp:Button ID="Button1" runat="server" Text="Button" οnclick="Button1_Click" OnClientClick="getNames()" /> </form> </body> </html>

webForm1.aspx.cs

using System; using System.Collections.Generic; using System.Linq; using System.Web; using System.Web.UI; using System.Web.UI.WebControls; namespace jxtDemoSMS { public partial class WebForm1 : System.Web.UI.Page { protected void Page_Load(object sender, EventArgs e) { if (!Page.IsPostBack) { } } protected void Button1_Click(object sender, EventArgs e) { //这里要说一下,因为我们取得的值是这样的。1|2|3|4这样的值,所以你要根据你一共有多少控件来算哪几个是一组数据 //然后进行分组存储 Response.Write(this.hdNames.Value + "<br>"); Response.Write(this.SelectName.Value); } } }

自动添加控件,一次提交多条记录。相关推荐

  1. Android 自动换行添加控件

    PS:转载请注明出处,谢谢 最近在项目里面有几个需要根据返回的数据来自动添加控件的地方,在网上找了一些,然后加上自己写的一些,都一起整理完,然后给自己做个备注,啦啦啦啦啦啦~~~~ 先贴一张镇楼效果图 ...

  2. jQuery EasyUI动态添加控件或者ajax加载页面后不能自动渲染问题的解决方法

    博客分类: jquery-easyui jQueryAjax框架HTML  现象: AJAX返回的html无法做到自动渲染为EasyUI的样式.比如:class="easyui-layout ...

  3. WP8.1学习系列(第二十章)——添加控件和处理事件

    先决条件 添加控件 设置控件的名称 设置控件属性 创建事件处理程序 新控件 总结 相关主题 通过使用如按钮.文本框和组合框等控件,你可以创建应用的 UI. 下面将显示如何将控件添加到应用.处理控件时, ...

  4. 一步步学习微软InfoPath2010和SP2010--第三章节--表单设计基础:处理InfoPath布局、控件和视图(6)--添加控件到Flight Delay表单

    准备:打开之前创建的Flight Delay表单.也可以下载Flight Delay Post exercise 1.xsn.右击模板文件,选择设计. 本练习,继续创建Flight Delay表单.添 ...

  5. asp.net动态添加控件学习

    看了老师的教程后,自己一点感悟记录下来: 1.在页面提交后,动态生成的控件会丢失, 但如果生成控件的代码在pageload中,就可以,原理是每次生成页面都执行生成. 2.动态按件或页面原来控件, 在页 ...

  6. 动态添加综合布局---动态添加控件及将某XML动态加入到Activity显示(续)

    前言:以前曾写过一篇关于动态生成控件的文章<动态添加控件及将某XML动态加入到Activity显示>,比较浅显,对于RelativeLayout的相关布局设置方法及相对布局与线性布局的混合 ...

  7. VS2010/MFC编程入门之五十三(Ribbon界面开发:为Ribbon Bar添加控件)

    前面一节中鸡啄米为大家简单介绍了如何创建Ribbon样式的应用程序框架,本节教程就来初步讲讲怎样为Ribbon Bar添加Ribbon控件. VS2010为Ribbon界面开发提供了Ribbon De ...

  8. 鸡啄米vc++2010系列7(对话框:创建对话框类和添加控件变量)

    前两讲中鸡啄米为大家讲解了如何创建对话框资源.创建好对话框资源后要做的就是生成对话框类了.鸡啄米再声明下,生成对话框类主要包括新建对话框类.添加控件变量和控件的消息处理函数等. 因为鸡啄米给大家的例程 ...

  9. mfc入门基础(四)对话框添加控件、创建对话框类和为对话框控件添加变量

    参考博客:VS2010/MFC编程入门之七(对话框:为对话框添加控件)-软件开发-鸡啄米 VS2010/MFC编程入门之八(对话框:创建对话框类和添加控件变量)-软件开发-鸡啄米 基于基础(三)中写的 ...

最新文章

  1. 批处理解决“易语言难题”
  2. Python代码高亮显示工具
  3. nodejs - 创建服务器(1)
  4. golang中的strings.Compare
  5. 【重要】2022年有三AI实战课程讲师招募,只等你来!
  6. JAVA多线程总结(笔记)
  7. 精通ASP.NET MVC ——模型绑定
  8. 3 MM配置-企业结构-定义-定义库存地点
  9. httperf使用入门
  10. ASP.NET MVC 5 SmartCode Scaffolding for Visual Studio.Net
  11. CENTOS利用Keepalived构建双主MySQL+双机热备
  12. XGBoost和GBDT的区别与联系
  13. MQTT协议(1)-简介
  14. 完全卸载mysql数据库
  15. uchome登陆机制分析(一)
  16. 安卓手机怎么投屏台式计算机WIN7,手机怎么投屏到win7电脑
  17. 波士顿学院的计算机科学,权威公布:美国最强商学院,TOP5里有你的梦校吗?...
  18. 独家 | 全球2000家客户,这家公司推动林肯MKZ成为最流行的自动驾驶样车
  19. rtmp直播协议介绍
  20. python并列排名_Oracle并列排名显示

热门文章

  1. 故障码(DTC)状态解析
  2. matlab 端点检测 能零比法_基于短时能量与过零率的端点检测的matlab分析
  3. WIN10中文乱码修复合集
  4. PHP 微信JSP支付
  5. VM12 启动虚拟机问题汇总
  6. C语言头插法尾插法创建单链表
  7. 如何组织一场安全、可靠、高效的网络实战攻防演习?
  8. 【Spring Security OAuth2笔记系列】- spring security - 图片验证码
  9. python将str写入csv_【python3】中str转成bytes类型后用csv.writerow()写入csv文件仍然出错...
  10. 设值单元格字体和背景色的颜色-实例