我有一个从MSDN复制的asp.net表单上传框。 提交表单后,我希望页面重定向2个查询参数,文件名和隐藏表单字段的数字,在同一表单和上传框中。 在表单提交添加到重定向代码后,如何获取该数字。 我的表单字段名称是'id'
<script runat="server">
Protected Sub Button1_Click(ByVal sender As Object, _
ByVal e As System.EventArgs)
If FileUpload1.HasFile Then
Try
FileUpload1.SaveAs("C:\inetpub\sites\rebbetzin\uploads\" & _
FileUpload1.FileName)
Label1.Text = "File name: " & _
FileUpload1.PostedFile.FileName & "<br>" & _
"File Size: " & _
FileUpload1.PostedFile.ContentLength & " kb<br>" & _
"Content type: " & _
FileUpload1.PostedFile.ContentType
Response.Redirect("http://www.rebbetzins.org/thanks.asp?id=" & ______ & "&f=" & FileUpload1.PostedFile.FileName )
Catch ex As Exception
Label1.Text = "ERROR: " & ex.Message.ToString()
End Try
Else
Label1.Text = "You have not specified a file."
End If
End Sub
答案 0 :(得分:0)
request.form(“id”)应该包含该隐藏表单字段中的值。
答案 1 :(得分:0)
该值存储在Request.Form
集合中,如下所示:
Request.Form("id")
因此,您的Response.Redirect
代码应如下所示:
Response.Redirect("http://www.rebbetzins.org/thanks.aspx?id=" & Request.Form("id") & "&f=" & FileUpload1.PostedFile.FileName )
注意:thanks
页面是.aspx
,而不是.asp
扩展名,对吗?我在答案中将其更改为.aspx
。
更新:
由于您有一个ASP.NET服务器控件保存隐藏值,因此您可以这样做:
Me.id2.Value
所以你的Response.Redirect
现在看起来像这样:
Response.Redirect("http://www.rebbetzins.org/thanks.aspx?id=" & Me.id2.Value & "&f=" & FileUpload1.PostedFile.FileName )
更新2:
要填充thanks.aspx
页面中的ASP.NET HiddenField控件,您需要在Page_Load
事件中的查询字符串中读取它,如下所示:
Protected Sub Page_Load(sender As Object, e As EventArgs)
If Request.QueryString("id") IsNot Nothing Then
Me.id2.Value = Request.QueryString("id")
End If
End Sub