Javascript 使用模型中的值将Ajax.ActionLink应用于DIV

Javascript 使用模型中的值将Ajax.ActionLink应用于DIV,javascript,c#,ajax,asp.net-mvc,razor,Javascript,C#,Ajax,Asp.net Mvc,Razor,这方面已经有一些类似的问题,但它们不包括使用模型中的值作为参数发送给控制器 在Razor视图中考虑以下代码: @foreach (var item in Model) { <div class="itemDisplay"> <img src="~/Images/@item.DisplayImage" /> @Ajax.ActionLink($"Item {item.Id}", "_ItemDisplay", new { id =

这方面已经有一些类似的问题,但它们不包括使用模型中的值作为参数发送给控制器

在Razor视图中考虑以下代码:

@foreach (var item in Model)
{
    <div class="itemDisplay">
        <img src="~/Images/@item.DisplayImage" />
        @Ajax.ActionLink($"Item {item.Id}", "_ItemDisplay", new { id = item.Id }, new AjaxOptions { UpdateTargetId = "itemDisplay", LoadingElementId = "ajax-loader", InsertionMode = InsertionMode.Replace, HttpMethod = "GET" }, null)
    </div>
}

因此,我的问题是,使用
ASP.Net MVC
,如何从DIV标记发出AJAX调用并将相关ID传递给控制器?

解决方案是通过将变量连接到
URL生成的字符串来构建URL。操作

'@Url.Action("_ItemDisplay")' + '/' + myVar

排序答案是否定的。
Ajax.ActionLink()
是一种生成
标记的方法。但是,当您可以使用
$.Ajax()
方法时,为什么要使用
Ajax.ActionLink()
(它现在实际上已经过时了-asp.net核心mvc中的团队不支持它)。Ajax()
方法给您带来了更大的灵活性。但是不清楚您想在这里做什么-第一个代码片段中的代码使用
Ajax.ActionLink()
根据服务器端值
item.Id
生成url-该代码中没有使用javascript变量。如果您确实希望在
$.ajax()
方法中使用javascript变量,那么它只是
var url='@url.Action(“\u ItemDisplay”)'+'/'+yourVariable
(假设使用默认路由),或
var url='@url.Action(“\u itemsdisplay”)'+'?id='+yourVariable @ Stephen Thanks,我没有考虑以您所描述的方式使用URL.Action。这完美地解决了我的问题。若你们想把它输入到一个答案中,我会接受的。这个问题被稍微编辑了一下以回应关闭标志。仍然不清楚你们的javascrpt变量来自哪里
'@Url.Action("_ItemDisplay")' + '/' + myVar