我正在使用 ASP.NET MVC 3 构建一个应用程序。在某一时刻,从一个页面转到另一个页面时,我的 URL 如下所示:
/Employee/EntityHome/15
其中 15 是通过的 ID。有没有办法不在 URL 请求中显示它?
我正在使用 ASP.NET MVC 3 构建一个应用程序。在某一时刻,从一个页面转到另一个页面时,我的 URL 如下所示:
/Employee/EntityHome/15
其中 15 是通过的 ID。有没有办法不在 URL 请求中显示它?
尝试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>
(在这种情况下,请参阅控制器 POST 数据容器中带有id
名称的参数)EntityHome
对于您的 ASP.MVC 应用程序,在控制器中Employee
使用方法EntityHome
来获取 POST 参数:
[HttpPost]
public ActionResult EntityHome(string id)
{
var employeeId = id;
. . .
}
如果 MVC 能够使用 post 而不是 get,则使用 post。