如何检查表单提交ASP经典

时间:2012-05-20 15:56:13

标签: forms post asp-classic

我在ASP classic中设置了一个表单,它会在提交后重新加载(action self)

但是这次它显示了之前提交的结果,那么我该如何检查是否已提交POST?

与PHP一样:

if($_POST['submit']) {
  show results...
}

1 个答案:

答案 0 :(得分:26)

您有几种选择:

方法1 - 检查请求方法:

If Request.ServerVariables("REQUEST_METHOD") = "POST" Then
    'Show Results...
End If

方法2 - 使用值为表单添加隐藏字段,然后检查该值是否已过帐:

If Request.form("HiddenValue") = "1" Then
    'Show Results...
End If

方法3 - 检查request.form集合是否包含项目:

If Request.Form.Count > 0 Then
    'Show Results...
End If

方法4 - 发布到查询字符串(即将action设置为<form>?post=yes

If Request.QueryString("post") = "yes" Then
    'Show Results...
End If

选择哪一个?

我首选的选项是方法4 - 因为它在地址栏中很容易看到发生了什么 - 如果由于某种原因我想避免在网址中显示这种级别的细节,我倾向于使用选项3,因为它很容易实施,不需要对源表格和很可靠。 至于其他两种方法:

  • 方法1 - 如果不这样做,我倾向于避免依赖服务器变量 100%控制服务器 - 没有真正的理由, 这只是我倾向于使用的一般习惯。
  • 方法2 - 您可以将隐藏字段替换为始终包含的其他字段 价值。