我有一个通用代码,可以在post值上创建一个循环。我需要获取发布数据的元素的id。
例如,如果Html源是:
<form id="form1" runat="server">
<input id="Name" type="text" name="Full Name" runat="server" />
<input id="Email" type="text" name="Email Address" runat="server" />
<input id="Phone" type="text" name="Phone Number" runat="server" />
</form>
C#代码:
for (int i = 1; i < Request.Form.Count; ++i)
{
string Value = Request.Form[i];
if (Value != "")
{
string ControlName = Request.Form.Keys[i];
string ControlId = ""; // Here I need to find the Id
}
}
如果ControlName是:“全名”,在ControlId中我需要:“名称”等。
欢迎任何建议。
答案 0 :(得分:3)
Request.Form 只返回 NameValueCollection 。
如果要将表单内的控件作为服务器控件检索,则需要使用 Page.Form 。
foreach (var control in Page.Form.Controls)
{
if (control is HtmlInputControl)
{
var htmlInputControl = control as HtmlInputControl;
string controlName = htmlInputControl.Name;
string controlId = htmlInputControl.ID;
}
}