C# 获取单击的锚元素';s id属性

C# 获取单击的锚元素';s id属性,c#,asp.net-mvc,C#,Asp.net Mvc,当用户单击此元素时,我希望在控制器中或ActionFilter类中的OnActionExecuting方法中获得catch id数据 我怎么能做到 鉴于: <a id="123" href="AreaName/ControllerName">TEST</a> 你可以试试这个 在控制器中: public ActionResult Index() { var model = new HomeViewModel { Id = 123 };

当用户单击此元素时,我希望在控制器中或ActionFilter类中的OnActionExecuting方法中获得catch id数据

我怎么能做到

鉴于:

<a id="123" href="AreaName/ControllerName">TEST</a>

你可以试试这个

在控制器中:

    public ActionResult Index()
    {
        var model = new HomeViewModel { Id = 123 };
        return View(model);
    }
    public void RecordClick(int id)
    {
        int incomingId = id;
    }
鉴于:

    @Html.ActionLink("Link Text", "RecordClick", "Home", new { id = @Model.Id }, null)
生成的HTML:

    <a href="/AreaName/Home/RecordClick/123">Link Text</a>

单击链接后,id值将发送到RecordClick操作

<a href="~/AreaName/ControllerName?userid=3">TEST</a>

如果您进行调试,您应该具有该值

,您应该转到
Jquery
将id值传递给controlleri。我不能使用
Jquery
,因为这将是一个简单的解决方案。当服务器已经收到请求时,将调用OnActionExecuting方法,此后您无法修改它。在呈现此锚定标记时,必须使用jquery或设置适当的URL。如果您有一些设置ID的模型变量,那么您可以在razor viewLink的ID属性中使用href=“AreaName/ControllerName/”+@model.ID,而不是由控制器设置。您认为这是随机数。Link的ID属性不是由控制器设置的。您认为这是随机数。我想我可能误解了您的目标;您是想要获取所单击控件的id,还是仅仅使用html元素的id属性来存储表示用户id的值?
    [HttpGet] 
    public ActionResult Index(int userid)
    {
       return View();
    }