zoukankan      html  css  js  c++  java
  • 点击一次铵钮产生一个新文本框,分别输入值,然后获取

    参考前一篇,http://www.cnblogs.com/insus/archive/2012/09/23/2698613.html 没有达到用户的要求,用户要求是每点击一次添加铵钮,产生一个新的文本框TextBox,在文本框输入一些值之后,点击获取文本框值的铵钮,能取得刚才在文本框的值。首先看看修改之后的效果:

    xxx.aspx:在网页中,拉一个动态添加文本框装载的容器PlaceHolder,和两个铵钮,一个是添加,另一个是获取值。

    View Code
     <asp:PlaceHolder ID="PlaceHolder1" runat="server"></asp:PlaceHolder>
                <br />
                <asp:Button ID="ButtonAdd" runat="server" Text="Add TextBox"  OnClick="ButtonAdd_Click" />
                <asp:Button ID="ButtonGetValue" runat="server" Text="GetTextValue" OnClick="ButtonGetValue_Click" />

    为了记录添加的次数,我们需要写一个属性,记得点击次数。

    TotalControls
     protected int TotalControls
        {
            get 
            {
                return ViewState["TotControls"] == null ? 0 : (int)(ViewState["TotControls"]); 
            }
            set 
            { 
                ViewState["TotControls"] = value; 
            }
        }

    写一个方法,动态产生文本框,方法有一个参数,就是传入将要产生的次数。

    View Code
     private void DymanicallyGenerateTextBoxControl(int totalControls)
        {
            TextBox tb = new TextBox();
            tb.ID = "TextBox" + totalControls;
            this.PlaceHolder1.Controls.Add(tb);
        }

    网页一加载时,Page_Load事件中,判断计数器为多少,循环产生文本框。

    View Code
     protected void Page_Load(object sender, EventArgs e)
        {
            for (int i = 0; i < TotalControls; i++)
            {
                DymanicallyGenerateTextBoxControl(i + 1);
            }       
        }

    Click事件:

    View Code
     protected void ButtonAdd_Click(object sender, EventArgs e)
        {
            TotalControls = TotalControls + 1;
            DymanicallyGenerateTextBoxControl(TotalControls);
        }

    最后是获取文本框值的铵钮Click事件:

    View Code
     protected void ButtonGetValue_Click(object sender, EventArgs e)
        {
            foreach (Control ctl in this.PlaceHolder1.Controls)
            {
                if (ctl is TextBox)
                    Response.Write(((TextBox)ctl).Text.Trim () + "<br/>");
            }
        }
  • 相关阅读:
    打印图片的属性和实现另存图片功能以及使用numpy
    opencv3.3 安装环境教程以及实现个图片读取功能
    在linux 创建网络会话和绑定两块网卡
    安装yum仓库
    C#添加错误日志信息
    关于使用宏将csv批量转换成xls的分享
    C#关于MySQL中文乱码问题
    无法启动iis express web服务器解决
    关于关闭WPS锁屏屏保及设置电脑自动关闭显示屏及休眠的分享
    为什么QQ能上却打不开网页呢?
  • 原文地址:https://www.cnblogs.com/insus/p/2700658.html
Copyright © 2011-2022 走看看