asp.net中的request.form获取不到控件的值
在使用了模板页的页面动态生成网页代码是:stringstrCtrl="<asp:TextBoxID=\"tbAccount\"runat=\"server\"style=...
在使用了模板页的页面动态生成网页代码是:
string strCtrl="<asp:TextBox ID=\"tbAccount\" runat=\"server\" style=\"text-align: left\"></asp:TextBox>"
Control ctrl = Page.ParseControl(strCtrl);
pholderRegItem.Controls.Add(ctrl);
数据提交后获取ID代码是:
string Account = Request.Form["tbAccount"];
请问为什么我获取不到他的tbAccount控件的值?
刚看了下from中AllKey中的值,发现有一项的值为:"ctl00$Body$tbAccount",这就说明这个TextBox的ID发生了改变,不是说Request.Form是获取服务器的控件不? 展开
string strCtrl="<asp:TextBox ID=\"tbAccount\" runat=\"server\" style=\"text-align: left\"></asp:TextBox>"
Control ctrl = Page.ParseControl(strCtrl);
pholderRegItem.Controls.Add(ctrl);
数据提交后获取ID代码是:
string Account = Request.Form["tbAccount"];
请问为什么我获取不到他的tbAccount控件的值?
刚看了下from中AllKey中的值,发现有一项的值为:"ctl00$Body$tbAccount",这就说明这个TextBox的ID发生了改变,不是说Request.Form是获取服务器的控件不? 展开
展开全部
我做了下实例,你看看对比一下
前台 2个button 和 一个 panel
protected void Button1_Click(object sender, EventArgs e)
{
for (int i = 0; i < 3; i++)
{
TextBox t = new TextBox();
t.ID = string.Format("newTextBox{0}", i);
Panel1.Controls.Add(t);
}
}
}
protected void Button2_Click(object sender, EventArgs e)
{
string str = Request.Form["newTextBox1"];
Response.Write("<script>alert('"+str+"')</script>");
}
我没有采用你的字符串形式来 生成控件,我是new出来后放入panel容器的
希望对你有帮助
前台 2个button 和 一个 panel
protected void Button1_Click(object sender, EventArgs e)
{
for (int i = 0; i < 3; i++)
{
TextBox t = new TextBox();
t.ID = string.Format("newTextBox{0}", i);
Panel1.Controls.Add(t);
}
}
}
protected void Button2_Click(object sender, EventArgs e)
{
string str = Request.Form["newTextBox1"];
Response.Write("<script>alert('"+str+"')</script>");
}
我没有采用你的字符串形式来 生成控件,我是new出来后放入panel容器的
希望对你有帮助
追问
个人认为采用字符串形式来生成控件相对而言可以简单点,因为我可以先用web编辑器生成动态页面的效果图,然后再组织到字符串变量,不过也很感谢您让我了解到您这方面的知识,谢谢
追答
没事,反正只要能实现就行
祝你成功,哈哈
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
request.form的方法请求的内容应该放在页面的form内,如果在form外或者是无form标签,那么很抱歉,你是读不到的!
更多追问追答
追问
有他解决办法不?谢谢
追答
用脚本传值吧,jquery的查找器简便些,没有用过可以直接用js,利用name来查找,采用url传参的方式,这样request.queryString()就能获取到!我一般在处理动态生成的控件传值上,一般都用脚本来传值提交!
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
TextBox 加上 name="tbAccount"
追问
不好意思,加了你的代码页获取不到,之前我直接用index获取到了它的值,后面加了你的代码忘了改,谢谢你的帮助
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询