当我从一个页面发布到另一个页面时,为什么我的 Asp.Net 表单到达时是空的?
我有以下 HTML 代码
<%@ Page Language="C#" %>
<html>
<head>
<title></title>
</head>
<body>
<form id="frmSystem" method="post" action="target.aspx">
<input id="txtTextField" type="text" />
<input id="btnPost" value="Submit" onclick="javascript:frmSystem.submit();" type="button" />
</form>
</body>
</html>
目标页面即将出现,但它接收的表单是空的。我的 target.aspx 页面上有一个断点,虽然我可以看到一个表单,但它的键是空的,并且 Request["txtTextField"] 没有给我任何信息。
有什么线索吗?
I have the following HTML Code
<%@ Page Language="C#" %>
<html>
<head>
<title></title>
</head>
<body>
<form id="frmSystem" method="post" action="target.aspx">
<input id="txtTextField" type="text" />
<input id="btnPost" value="Submit" onclick="javascript:frmSystem.submit();" type="button" />
</form>
</body>
</html>
The target Page is coming up but the form that it is receiving is empty. I have a break point on my target.aspx page and while I can see a form, it's keys are empty and Request["txtTextField"] gives me nothing.
Any clue why?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(4)
如果您使用 ASP.NET MVC,则需要使用“name”属性而不是“id”设置输入名称。
If you are using ASP.NET MVC, the input names need to be set with the "name" attribute rather than "id".
您可能会在事件处理程序(例如 page_load)中重置表单值。
You probably reset the form value in event handlers (such as page_load).
如果您像我一样使用 ASP.NET 4.5,请使用以下提示
更多资源对我有用的详细信息
If you are using ASP.NET 4.5 like me, use below hints
more resources with more detail that was useful to me
另一种选择是在 Global.asax.cs 上的 Application_BeginRequest 中捕获您的 Request.Form[] 数据:
问题是,表单数据在友好Urls应用的自动重定向中丢失 - 如果您将该数据存储为除表单数据时,无需关闭FriendlyUrls或将AutoRedirectMode设置为RedirectMode.Off。
Another option is to capture your Request.Form[] data in Application_BeginRequest on the Global.asax.cs:
The problem is that the form data is lost on the automatic redirect which is applied by friendlyUrls - if you store that data as something other than form data, it is unnecessary to turn off friendlyUrls or set AutoRedirectMode to RedirectMode.Off.