zoukankan
html css js c++ java
(补充)移除动态添加的控件
好像问动态添加控件的人很多,问题大多集中
(1)动态添加的按钮不能提交
(2)动态添加的文本框取不到值
(3)动态添加的控件页面刷新后消失
(4)动态添加的控件页面刷新重复添加
(5)动态添加的控件不知道怎么移除
问题百出,但是其实这些都是非常简单的,可能疏忽了一点两点,补充以前写的2篇文章(以前写的比较乱)
这个页面实现:
点击添加按钮-》添加一个文本框一个提交按钮-》点击提交按钮输出文本框值
点击删除按钮(就是前面那个添加按钮)-》移除文本框和提交按钮
using
System;
using
System.Collections;
using
System.ComponentModel;
using
System.Data;
using
System.Drawing;
using
System.Web;
using
System.Web.SessionState;
using
System.Web.UI;
using
System.Web.UI.WebControls;
using
System.Web.UI.HtmlControls;
namespace
csdn2
{
/**/
///
<summary>
///
WebForm65 的摘要说明。
///
</summary>
public
class
WebForm65 : System.Web.UI.Page
{
protected
System.Web.UI.WebControls.Button Button1;
private
void
Page_Load(
object
sender, System.EventArgs e)
{
if
(Page.IsPostBack)
{
if
(ViewState[
"
adduc
"
]
!=
null
)
{
adduc();
}
}
}
Web 窗体设计器生成的代码
#region
Web 窗体设计器生成的代码
override
protected
void
OnInit(EventArgs e)
{
//
//
CODEGEN: 该调用是 ASP.NET Web 窗体设计器所必需的。
//
InitializeComponent();
base
.OnInit(e);
}
/**/
///
<summary>
///
设计器支持所需的方法 - 不要使用代码编辑器修改
///
此方法的内容。
///
</summary>
private
void
InitializeComponent()
{
this
.Button1.Click
+=
new
System.EventHandler(
this
.Button1_Click);
this
.Load
+=
new
System.EventHandler(
this
.Page_Load);
}
#endregion
private
void
Button1_Click(
object
sender, System.EventArgs e)
{
if
(ViewState[
"
adduc
"
]
==
null
)
{
adduc();
ViewState[
"
adduc
"
]
=
1
;
}
else
{
deluc();
ViewState[
"
adduc
"
]
=
null
;
}
}
private
void
Button2_Click(
object
sender, System.EventArgs e)
{
TextBox t
=
(TextBox)Page.FindControl(
"
t
"
);
if
(t
!=
null
)Response.Write(t.Text);
}
public
void
adduc()
{
TextBox t
=
new
TextBox();
t.ID
=
"
t
"
;
Page.Controls[
1
].Controls.Add(t);
this
.Button1.Text
=
"
删除
"
;
Button b
=
new
Button();
b.Text
=
"
提交
"
;
b.ID
=
"
b
"
;
b.Click
+=
new
System.EventHandler(
this
.Button2_Click);
Page.Controls[
1
].Controls.Add(b);
}
public
void
deluc()
{
Page.Controls[
1
].Controls.Remove(Page.FindControl(
"
t
"
));
Page.Controls[
1
].Controls.Remove(Page.FindControl(
"
b
"
));
this
.Button1.Text
=
"
添加
"
;
}
}
}
欢迎大家阅读我的极客时间专栏
《Java业务开发常见错误100例》
【全面避坑+最佳实践=健壮代码】
查看全文
相关阅读:
MySQL GROUP BY多个字段分组用法详解
Linux下自动备份MySQL数据库并上传到远程FTP服务器
mysql服务器主从数据库同步配置(转)
centos上安装配置java WEB环境_java(转)
Win7和Vista的安全机制对于应用程序读取配置文件相关操作的影响(虚拟重定向技术)
firemonkey 手机屏幕自适应程序问题
Delphi中无边框窗体应用程序使任务栏右键菜单有效的方法
GetClass与RegisterClass的应用一例
Delphi中的动态包,有详细建立包的步骤(答案很简单:因为包的功能强大)
JS开发调试
原文地址:https://www.cnblogs.com/lovecherry/p/152455.html
最新文章
Android系统默认Home应用程序(Launcher)的启动过程源码分析
配置Log4j(非常具体)
使用Java高速实现进度条
第一个 Python 程序
Java字符串转换为日期和时间比较大小
shell之函数
Java实现第九届蓝桥杯哪天返回
Java实现二阶魔方旋转
Java实现运动员分组
Java实现二阶魔方旋转
热门文章
Java实现二阶魔方旋转
Java实现运动员分组
Java实现二阶魔方旋转
Java实现二阶魔方旋转
SSH框架通过JFreeChart实现柱状图和获取项目路径
JFreeChart的使用(转)
struts2整合JFreechart 饼图、折线图、柱形图
jFreeChart利用CategoryDatase,ChartFactory.createBarChart生成的柱状图
MySql分库分表总结(转)
SQL 模糊查询
Copyright © 2011-2022 走看看