Aspx后台遍历控件
aspx设计页面
//这个是检测按钮,检测下面的checkbox是否被选中。选中时打印其值
//https://www.cnblogs.com/pwblog/articles/3456385.html
<asp:Button ID="Button1" runat="server" Text="检测" OnClick="Button1_Click" /> 第一种设计:(.net 自带的)
<asp:CheckBox ID="CheckBox1" runat="server" Text="报纸" />
<asp:CheckBox ID="CheckBox2" runat="server" Text="杂志" />
<asp:CheckBox ID="CheckBox3" runat="server" Text="小说" />
<asp:CheckBox ID="CheckBox4" runat="server" Text="词典" /> 第二种设计:(html 自带的,但含有runnat="server")
<input id="CheckBox1" type="checkbox" name="aa" runat="server" value="报纸"/>
<input id="CheckBox2" type="checkbox" name="aa" runat="server" value="杂志"/> 第三种设计:(html 自带的)
<input id="CheckBox1" type="checkbox" name="aa" value="报纸"/>
<input id="CheckBox2" type="checkbox" name="aa" value="杂志"/>
aspx.cs文件 (将按照对应的上面的三种设计模式去写后台代码。其他的单选按钮也类似。) protected void Button1_Click(object sender, EventArgs e)
{
//这个是上面第一种模式
foreach (Control ct in form1.Controls)
{
if (ct.GetType().ToString().Equals("System.Web.UI.WebControls.CheckBox"))
{
CheckBox cb = (CheckBox)ct;
if (cb.Checked == true)
{
Response.Write(cb.Text);
}
}
}
//这个是上面第二种模式。(直接用request取值,会报错的。不信试试)
foreach (Control ct in form1.Controls)
{
if (ct.GetType().ToString().Equals("System.Web.UI.HtmlControls.HtmlInputCheckBox"))
{
HtmlInputCheckBox cb = (HtmlInputCheckBox)ct;
if (cb.Checked == true)
{
Response.Write(cb.Value);
}
}
}
//这个是上面第三种模式。(没有runnat="server",用request取值最简单)
Response.Write(Request["aa"].ToString());
} 另一种方式:
private void FindAllPageControl(ControlCollection controlCollection)
{
for (int i = 0; i < controlCollection.Count; i++)
{
if (controlCollection[i].GetType() == typeof(NumericBox)) //System.Web.UI.WebControls.TextBox
{
if ((controlCollection[i] as NumericBox).ID != "nbPrice")
{
(controlCollection[i] as NumericBox).DecimalValue = 0;
}
}
if (controlCollection[i].HasControls())
{
FindAllPageControl(controlCollection[i].Controls);
}
}
} //调用
FindAllPageControl(this.Page.Controls)
Aspx后台遍历控件的更多相关文章
- ASP.NET 后台不识别ASPX中的控件
请问后台不识别ASPX中的控件,怎么解决 这个程序是在网上下载的 C# code <asp:DataGrid runat="server" ID="dgList1& ...
- wpf 遍历控件及其值
/// <summary> /// 遍历控件及其值 /// </summary> /// <param name="uiControls">界面 ...
- javascript遍历控件(实例详解)
js遍历页面控件, 代码如下 复制代码 var inputArr = document.forms[0]; for( var i = 0; i < inputArr.length; i++ ...
- 老李推荐:第14章9节《MonkeyRunner源码剖析》 HierarchyViewer实现原理-遍历控件树查找控件
老李推荐:第14章9节<MonkeyRunner源码剖析> HierarchyViewer实现原理-遍历控件树查找控件 poptest是国内唯一一家培养测试开发工程师的培训机构,以学员 ...
- 消息框MessageBox+遍历控件
消息对话框:主要用来显示信息,也可以警告.用户确认取消等. MessageBox.Show("展示内容","标题",MessageBoxButtons.按钮种类 ...
- javascript客户端遍历控件与获取父容器对象
javascript客户端遍历控件与获取父容器对象示例代码 1,遍历也面中所有的控件function findControlAll() { var inputs=document. ...
- upw,c#,启用后台播放控件
uwp音视频app,启用后台播放控件. 启用控件 SystemMediaTransportControls systemMedia_TransportControls = SystemMediaTra ...
- 2018-8-10-win10-uwp-使用资源在后台创建控件
title author date CreateTime categories win10 uwp 使用资源在后台创建控件 lindexi 2018-08-10 19:17:19 +0800 2018 ...
- C#后台创建控件并获取值
前台代码 <form id="form1" runat="server"> <div> <div class="item ...
随机推荐
- shell脚本获取传入参数的个数
ts.sh #!/bin/bash echo $# 输出 [root@redhat6 ~]# ./ts.sh para1 [root@redhat6 ~]# ./ts.sh para1 para2 [ ...
- Mongoose 数据校验
什么是mongoose数据校验 用户通过mongoose给mongodb数据库增加数据的时候,对数据的合法性进行的验证 mongoose里面定义Schema:字段类型,修饰符.默认参数 .数据校验都是 ...
- UDF——判断边界类型
- [原创]STAR法则
[原创]STAR法则 STAR法则是情境(situation).任务(task).行动(action).结果(result)四项的缩写. STAR法则是一种常常被面试官使用的工具,用来收集面试者与工作 ...
- Net core学习系列(十)——Net Core配置
一.前言 选项(Options)模式是对配置(Configuration)的功能的延伸.在12章(ASP.NET Core中的配置二)Configuration中有介绍过该功能(绑定到实体类.绑定至对 ...
- 自己动手实现DNS协议
1. 主要内容 不说废话,直接进入正题.先说说本文本文的主要内容,好让你决定是否看下去: 介绍DNS是干什么的: 介绍DNS是如何工作的: 介绍DNS请求与响应的消息格式: 编程实现一个简单的DNS服 ...
- Python中如何计算字符串里面某一个字符出现的次数?
一个突发奇想,想解决一个学习中的行业痛点,让我又再度拾起了Python编程语言的学习. 刚学两天,今天遇到一个题,该题难度不高,但有一点关键点在网上找不到,网上也没有相关的答案,于是我只好千辛万苦 ...
- Unity2D游戏开发之保卫萝卜
保卫萝卜是2D塔防游戏里边的一个经典案例,这次去开发这个游戏,我们会尽力去实现和原版一样的功能,做好我们可以处理好的每一个游戏细节(比如塔攻击的集火目标优先攻击,与自动搜索,格子的三种处理逻辑,UI的 ...
- python lambda表达式简单用法【转】
python lambda表达式简单用法 1.lambda是什么? 看个例子: g = lambda x:x+1 看一下执行的结果: g(1) >>>2 g(2) >>& ...
- 三句话看明白jdk收费吗
对于从oracle下载的jdk8:JDK8u200(含)以下版本不收费. 对于从oracle下载的jdk11:JDK 11.0.0不收费,JDK 11.0.1不收费. 对于openjdk:免费 ——— ...