通过this.Page.Controls,得到ControlCollection,这个集合下面有3个成员,Owner依次为:
this.Page.Controls[0]--System.Web.UI.ResourceBasedLiteralControl
this.Page.Controls[1]--System.Web.UI.HtmlControls.HtmlForm
this.Page.Controls[2]--System.Web.UI.LiteralControl
可见,如果想得到所有的TextBox控件,必须选择this.Page.Controls[1],再获取其下面的Controls集合,即可得到你想要的TextBox。This is because the TextBox is a child control of the Web Form control (the HtmlForm control)
------------------------------------------------------------
华丽的分割线
------------------------------------------------------------
c# 遍历页面TextBox
public void SetTextBox(Control obj)
{
for(int i=0;i<obj.Controls.Count;i++)
{
if(obj.Controls[i].Count>0)
SetTextBox(obj.Controls[i]);
else
{
if(obj.Controls[i].GetType==typeof(TextBox))
((TextBox)obj.Controls[i]).Text = "textbox";
}
}
}
protected void Page_Load(object sender, EventArgs e)
{
SetTextBox(Page);
}
//需要修改
foreach (Control ctl in this.Controls)
{
if (typeof(ctl)==typeof(TextBox))
{
ctl.Text="我是textbox";
}
}
//*************************
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack) { getTextBox(Page); }
}
private void getTextBox(Control obj)
{
for (int i = 0; i < obj.Controls.Count; i++)
{
if (obj.Controls[i].Controls.Count > 0)
getTextBox(obj.Controls[i]);
else
{
if (obj.Controls[i].GetType() == typeof(TextBox))
((TextBox)obj.Controls[i]).Text = "我是文本框";
}
}
}
//****************************
protected void Button1_Click(object sender, EventArgs e)
{
SetTextBox(Page);
}
public void SetTextBox(Control obj)
{
for (int i = 0; i < obj.Controls.Count;i++ )
{
if (obj.Controls[i].HasControls())
{
SetTextBox(obj.Controls[i]);
}
else
{
if (obj.Controls[i] is TextBox)
{
(obj.Controls[i] as TextBox).Text = "test";
}
}
}
}
三种方法,使用递归,获取页面所有的Textbox
------------------------------------------------------------
华丽的分割线
------------------------------------------------------------
遍历所有链接,并设置为不可见.
var a = document.getElementsByTagName("A");
for(var i=0;i<a.length;i++)
{
if(a[i].name.indexOf('IDView') != -1)
a[i].style.display = 'none';
}
遍历所有文本框.
var list=document.getElementsByTagName("input");
for(var i=0;i<list.length && list[i];i++)
{
//判断是否为文本框
if(list[i].type=="text")
{
for(var j=0;j<86;j++)
{
if(list[i].id == JsDispatch.value[0][j])
{
list[i].value = JsDispatch.value[1][j];
}
}
}
}
遍历表格,DataGrid,GridView
function getPreTicket()
{
var _table = document.getElementById("gvTicketList"); //获取表格gvTicketList为GivView控件名;
var _trs = _table.all.tags('tr');//获取所有行;
for(var i=0;i < _trs.length ; i++)
{
if(_trs[i].id.indexOf(__currentTicketID)!=-1) //当前行,是否有绑定表的主键,
{
i--;//切换到上行
if(_trs[i]!=null && _trs[i].id!="")
{
var _s1 ="gvTicketList";
BindData( _trs[i].id.substring(_s1.length+1) );//把这一个行ID传给其它函数
}
else
{
alert("This is the first record of the current page!");
document.getElementById("aPreTicket").style.disbaled =true;
break;
}
}
}
}