我正在 ASP 经典中设置一个表单,它会在提交后重新加载( Action 自我)
但是这次它显示了以前提交的结果,那么我如何检查是否已经进行了POST提交?
就像在 PHP 中一样:
if($_POST['submit']) {
show results...
}
最佳答案
您有多种选择:
方法一 - 检查请求方法:
If Request.ServerVariables("REQUEST_METHOD") = "POST" Then
'Show Results...
End If
方法二 - 向您的表单添加一个带有值的隐藏字段,然后检查该值是否已发布:
If Request.form("HiddenValue") = "1" Then
'Show Results...
End If
方法三 - 检查 request.form 集合是否包含项目:
If Request.Form.Count > 0 Then
'Show Results...
End If
方法四 - 发布到查询字符串(即设置
action
of <form>
到 ?post=yes
)If Request.QueryString("post") = "yes" Then
'Show Results...
End If
选哪一个?
我的首选选项是方法 4——因为它很容易在地址栏中看到正在发生的事情——如果出于某种原因我想避免在 url 中显示这种级别的细节,我倾向于使用选项 3,因为它很容易实现,不需要对源表单进行更改并且是可靠的。
至于另外两种方法:
对服务器有 100% 的控制权——没有真正的理由,
只是我倾向于使用的一般习惯。
一个值。
关于forms - ASP经典如何查看表单提交,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10674933/