我建立使用ASP.NET MVC 3,应用程序在一个点上,从一个网页到另一个,我的URL看起来像这样:我可以隐藏来自URL的请求信息吗?
/Employee/EntityHome/15
,其中15是通过ID。有没有什么方法不要在URL请求中显示它?
我建立使用ASP.NET MVC 3,应用程序在一个点上,从一个网页到另一个,我的URL看起来像这样:我可以隐藏来自URL的请求信息吗?
/Employee/EntityHome/15
,其中15是通过ID。有没有什么方法不要在URL请求中显示它?
如果MVC能够使用post而不是get然后使用post。
试图通过15
作为POST参数/Employee/EntityHome
控制器,例如在网页中,你可以做以下的AJAX请求(通过jQuery
):
function send_employee_id(value) {
$.ajax({
url: '<your webapp>/Employee/EntityHome',
data: { 'id' : value },
type: 'post',
contentType: 'application/x-www-form-urlencoded',
async: false,
success: function(html) {
// whatever on success
});
}
赶上它在你的MVC应用程序控制器POST参数容器,作为'id'名字的参数并且做某事。
你也可以尝试传统的HTML表单张贴数据:
<form action="/Employee/EntityHome" method="post">
. . .
<input type="hidden" name="id" />
. . .
</form>
(在这种情况下,看参数在EntityHome
控制器POST数据容器id
名)
为了您ASP.MVC应用,在控制器Employee
使用方法EntityHome
抢POST paramer:
[HttpPost]
public ActionResult EntityHome(string id)
{
var employeeId = id;
. . .
}
通行证'15'作为POST参数'/雇员/实体家庭控制器。 – rook
@rook您应该将其作为答案发布。 :) – doppelgreener