Asp.net mvc 3 ASP.NET MVC3输入不使用查询参数获取
在asp.net MVC3中,如何使用源网页的查询参数实现输入,以及它得到什么?我宁愿不要使用隐藏的输入 更新。例如,我的页面包含一个查询参数id=54,当输入导致GET时,我需要目标控制器/操作接收该查询参数Asp.net mvc 3 ASP.NET MVC3输入不使用查询参数获取,asp.net-mvc-3,get,query-parameters,Asp.net Mvc 3,Get,Query Parameters,在asp.net MVC3中,如何使用源网页的查询参数实现输入,以及它得到什么?我宁愿不要使用隐藏的输入 更新。例如,我的页面包含一个查询参数id=54,当输入导致GET时,我需要目标控制器/操作接收该查询参数 // could i change it for include query parameters of source page? using (Html.BeginForm("Action", "Controller", FormMethod.Get)) { <inpu
// could i change it for include query parameters of source page?
using (Html.BeginForm("Action", "Controller", FormMethod.Get))
{
<input type="submit" value="Text" onclick="submit"/>
}
//我可以为源页面的include查询参数更改它吗?
使用(Html.BeginForm(“Action”、“Controller”、FormMethod.Get))
{
}
使用以下命令:ControllerContext.HttpContext.Request.urlreferer.ToString()代码>
如果没有帮助,可以使用全局过滤器(在global.asax注册)
如果您想使用以前的url参数编辑当前url,此链接将对您有所帮助:我将使用TempData存储此类临时数据,TempData在读取后会保存为一个routetrip,除非使用keep方法,否则应将其释放。您的问题的解决方案正是这样的:
Html.BeginForm("Action", "Controller", new { id = 54 }, FormMethod.Get)
请重新措辞这个问题,我不明白。在ASP.NET MVC 3中发布表单时,您想实现隐藏输入的替代方案吗?似乎不可能:有人能确认吗?谢谢您的回答。好把戏;-)但我认为还有另一种选择,我认为我更喜欢隐藏的输入而不是你的答案。有些代理可以删除URLreferer,我只想避免额外的隐藏输入。所以,我可以更改包含查询参数的输入得到的url吗?不明白。您能详细解释一下您想要什么输入以及您想要更改什么吗?注意,表单中的查询参数被忽略。我肯定这是有效的,我没有找到任何理由不在你的链接。答案中的表格将提交到如下位置:/Controller/Action?id=54。问题是什么?如果在表单操作中使用HTTP GET并使用查询参数,则浏览器不会发送查询参数。您可以使用fiddler进行测试:那么为什么这样做有效呢?你试过这个吗?那么,如何在像以前的site.tld/somepath那样的页面中提交表单?p=1&m=45?是否对参数使用隐藏输入?
Html.BeginForm("Action", "Controller", new { id = 54 }, FormMethod.Get)