【问题标题】:FORM POST not passing input valuesFORM POST 不传递输入值
【发布时间】:2012-02-08 21:38:42
【问题描述】:

我有一个简单的表单,可以传递到 ASPX 页面来观看视频。 ASPX 页面使用表单中的隐藏字段来加载正确的视频。

这对我有用,但其他几个人是错误消息,因为它似乎没有传递值。我假设它是 IE 中的一个设置...有人看过这个或知道如何解决吗?还是更好的主意?

“yourdomain.org”上的简单表单

<form action="http://www.mydomain.org/WatchVideo/Default.aspx" method="post" enctype="multipart/form-data">
    <input type="hidden" name="hidden" value="movie.flv" />
    <input type="submit" name="submit" value="Watch Video" />
</form>

“mydomain.org”上的 ASPX 页面

    If Request.Form("hidden") IsNot Nothing Then
        lit.Text = Request.Form("hidden")
    Else
        Response.Write("Not Authorized. Video Not Passed.")
    End If

听起来和看起来都很直接。不知道为什么相同版本的 IE 会有不同的结果。关于如何做到这一点的任何其他想法?我需要为非技术人员保持简单的“场外”编码和 HTML 格式。

谢谢。

【问题讨论】:

  • 也许 IE 无法处理隐藏字段的名称“隐藏”。你试过改变它的名字吗?另外,为什么需要“enctype="multipart/form-data"?
  • 我会试试的。我在 enctype 不起作用时添加了它,只是想看看这是否有所作为。
  • 将名称从“隐藏”更改为无效。它在相同版本的 IE 上工作和不工作,所以它必须是一个设置?
  • 如果您将 mydomain.org 添加到有问题的计算机上的受信任站点,是否会有所不同 - 即尝试排除任何浏览器安全问题。如果您将表单方法更改为 GET,它应该将表单值作为查询字符串参数传递...然后您可以使用 Request.QueryString 集合进行检查。
  • 真的很奇怪...刚刚在 IE9 中测试过,它工作正常。确保在找到答案时添加答案!

标签: asp.net forms internet-explorer post


【解决方案1】:

这似乎是浏览器内部的设置。我无法将其缩小到特定设置,但是一旦我们将“Internet”区域从中高更改为中,它就开始工作了。它与跨域发布表单数据有关。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-08-26
    • 2018-03-19
    • 2015-11-09
    • 1970-01-01
    • 1970-01-01
    • 2018-12-31
    相关资源
    最近更新 更多