下面的函数每执行一次就生成一个TextBox(其实是<input type="Text">)


   var i=0;
    function changeIt()
    {
    if(i<5)
    {
        i=i+1;
        skils='skill'+i;
        my_div.innerHTML = my_div.innerHTML +" <input type='text' id='" + skils + "'>";
    }
    else
    {
    }
    }

我们来之行它:点击以下就添加一个TB:

        <a id="addSkills" href="javascript:changeIt();">Add More</a>

好,文本框是显示出来了,但它是在客户端生成的,不能保存状态,跟服务端无法直接沟通,它们的值我们怎么来取呢?——Hidden Field,老办法。。。

        <asp:HiddenField ID="Skills" runat="server" />

    function getValues()
    {
        document.getElementById("Skills").value=document.getElementById('skill1').value+"|";
        document.getElementById("Skills").value+=document.getElementById('skill2').value+"|";
        document.getElementById("Skills").value+=document.getElementById('skill3').value+"|";
        document.getElementById("Skills").value+=document.getElementById('skill4').value+"|";
        document.getElementById("Skills").value+=document.getElementById('skill5').value+"|";
        window.alert(document.getElementById("Skills").value);
    }

这样,就把这些TEXTBox们的值存入了Hidden Field,我们在服务端取一下看看:

        <asp:Button ID="Button3" OnClientClick="javascript:getValues();" runat="server" 
            Text="get from client-side" onclick="Button3_Click"/>
    protected void Button3_Click(object sender, EventArgs e)
    {
        string val=this.Skills.Value;
        Response.Write(val);
    }

取出来了:

全部代码在此:

<%@ Page Language="C#" AutoEventWireup="true" CodeFile="Default.aspx.cs" Inherits="_Default" %>

<!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>Untitled Page</title>     <script language="javascript" type="text/javascript">
    var i=0;
    function changeIt()
    {
    if(i<5)
    {
        i=i+1;
        skils='skill'+i;
        my_div.innerHTML = my_div.innerHTML +" <input type='text' id='" + skils + "'>";
    }
    else
    {
    }
    }
    function getValues()
    {
        document.getElementById("Skills").value=document.getElementById('skill1').value+"|";
        document.getElementById("Skills").value+=document.getElementById('skill2').value+"|";
        document.getElementById("Skills").value+=document.getElementById('skill3').value+"|";
        document.getElementById("Skills").value+=document.getElementById('skill4').value+"|";
        document.getElementById("Skills").value+=document.getElementById('skill5').value+"|";
        window.alert(document.getElementById("Skills").value);
    }
    </script> </head>
<body>
    <form id="form1" runat="server">
    <div>
        <asp:HiddenField ID="Skills" runat="server" />
        <a id="addSkills" href="javascript:changeIt();">Add More</a>
        <asp:Button ID="Button3" OnClientClick="javascript:getValues();" runat="server" 
            Text="get from client-side" onclick="Button3_Click"
           />
        <div id="my_div">
        </div>
    </div>
    </form>
</body>
</html>
using System;
using System.Configuration;
using System.Data;
using System.Linq;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.HtmlControls;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Xml.Linq; public partial class _Default : System.Web.UI.Page 
{
    protected void Page_Load(object sender, EventArgs e)
    {     }
    protected void Button3_Click(object sender, EventArgs e)
    {
        string val=this.Skills.Value;
        Response.Write(val);
    }
}
 
 

ASP.NET 动态创建文本框 TextBox (add TextBox to page dynamically)的更多相关文章

  1. Asp.net中使用文本框的值动态生成控件的方法

    这篇文章主要介绍了Asp.net中使用文本框的值动态生成控件的方法,非常不错,具有参考借鉴价值,需要的朋友可以参考下 看到一个网友,有论坛上问及,动态的生成checkbox控件,在文本框中输入一个“花 ...

  2. 使用Htmlhelper,创建文本框TextBox

    下面通过HtmlHelper帮助类,创建文本框. 首先新建一个实体类,做为下面的例子: using System; using System.Collections.Generic; using Sy ...

  3. MVC动态添加文本框,后台使用FormCollection接收

    在"MVC批量添加,增加一条记录的同时添加N条集合属性所对应的个体"中,对于前台传来的多个TextBox值,在控制器方法中通过强类型来接收.使用FormCollection也可以接 ...

  4. SSRS动态设置文本框属性

    SSRS可以通过表达式动态设置文本框所有的属性,比如字体,字号,是否加粗,如下图所示: 汉字和数字英文字母占用的空间不一样,一个汉字占用两个数字和英文字母的空间,VB里有LENB取得字节数,这SSRS ...

  5. JS实现动态提示文本框可输入剩余字数(类似发表微博数字提示)

    一.实现效果: 为了更直观的体现用户在文本框输入文本时能看到自己输入了多少字,项目中需要通过判断提示文本框剩余可输入字数. html & JS: <div> <textare ...

  6. word中创建文本框

    word中创建文本框         在插入中点击"文本框"选项卡,例如以下图所看到的:        手工加入自己想要的文本框格式,然后选择所创建的文本框,在工具栏处会发现多了一 ...

  7. HTML创建文本框的3种方式

    我的第一个随笔,记录主要用来整理学习的知识点 1.input 创建单行文本框 <input type="text" size="10" maxlength ...

  8. ASP.Net动态创建GridView

    1.创建Field BoundField requestitem = new BoundField();//注意Field可以是ButtonField,TemplateField,...等等GridV ...

  9. iOS学习之根据文本内容动态计算文本框高度的步骤

    在视图加载的过程中,是先计算出frame,再根据frame加载视图的,所以在设计计算高度的方法的时候,设计成加号方法; //首先给外界提供计算cell高度的方法 + (CGFloat)heightFo ...

随机推荐

  1. 由于无法验证发布者 所以windows阻止此软件

    打开Internet Explorer---菜单栏点“工具”---Internet选项--安全---自定义级别---安全设置---“ActiveX控件和插件下”的第5个“下载未签名的ActiveX控件 ...

  2. strace用法说明

    strace命令详解strace 命令是一种强大的工具,它能够显示所有由用户空间程序发出的系统调用. strace 显示这些调用的参数并返回符号形式的值.strace 从内核接收信息,而且不需要以任何 ...

  3. php 验证码代码

    1.js代码 function fleshVerify(type){ //重载验证码 var timenow = new Date().getTime(); if (type) { $('verify ...

  4. hbase源码系列(十三)缓存机制MemStore与Block Cache

    这一章讲hbase的缓存机制,这里面涉及的内容也是比较多,呵呵,我理解中的缓存是保存在内存中的特定的便于检索的数据结构就是缓存. 之前在讲put的时候,put是被添加到Store里面,这个Store是 ...

  5. 初试 spring web mvc

    作为一名code需要了解更多的知识,编程方面的东西太多了,是个逐渐积累的过程.最近学习一下spring web mvc,写下我个人的一些经验. 1.准备jar包.spring mvc 已经到了版本4, ...

  6. css小贴士备忘录

    前言:在CSS的学习实践过程中,我经常遗忘一些貌似常用的代码,为了能够强化记忆特在此作归纳整理并将陆续增删,以备即时查阅.但愿今后能遇到问题及时解决,牢牢记住这些奇怪的字符们. 一.关于段落文本强制对 ...

  7. 【转】Windows 7 API Internet Connection Sharing(ICS) 与 Wireless Hosted Network构建本地AP

    原文:http://hi.baidu.com/ritrachiao/item/bf7715e6bb8cb3a0c10d75be [此刻我要大大地记录一下!] 这个折腾了我好几天的Windows 7 A ...

  8. 安装Cocos2d-x3.0步骤

    一.在Windows环境下安装 二.在Mac环境下安装 首先,安装brew工具,参照官方网:http://brew.sh/index_zh-cn.html Cocos2d-x3.0需要安装NDK,SD ...

  9. 高通 fastboot 显示

    需要在fastboot里面添加功能用于保存,记录一下fastboot显示的过程. android O新添加了选项,如下 platform/msm_shared/rules.mk ifeq ($(ENA ...

  10. MySQL导入数据错误error: 13 及解决办法

    先说解决办法 将sql文件放到你的账号能够访问的地方!!! 因为我用的grid账号,所以只需要将sql放到 ~grid/ 或者 /tmp等grid能够访问的地方即可. Don't place the ...