2

您如何确定 中的控制类型Request.Form

 foreach (string x in Request.Form.Keys)
 {                                
    if (Request.Form[x] == null || Request.Form[x].ToString() == "")
    {....

我想知道每个循环的控制类型是什么。

它是文本框、列表框、隐藏字段等...

如何才能做到这一点?

4

2 回答 2

1

偶尔手动使用 Request 集合而不是强类型控制对象很有用。但是,几乎在任何情况下,遍历所有控件都可能是一个坏主意。

您可以使用 Request 集合中的键执行递归。 FindControl()如果FindControl不返回 null,请检查控件的类型。

请注意,提交的密钥与控件的实际 ID 不同。它通常看起来像:

<input type="text" name="foo$bar$txtFirstName" id="foo_bar_txtFirstName" />

“name”是请求集合中的实际键,但“id”是控件的 ID。这需要进一步的映射步骤。

于 2012-04-24T21:01:22.570 回答
0

这是不可能的。浏览器不提交此信息。HTTP 标准不包含本质上传输此信息的方法。

于 2012-04-24T21:01:47.317 回答