如何在MVC Razor View中从模型中获取ID

时间:2012-08-03 21:53:23

标签: asp.net-mvc razor

我有一个带有ViewModel的Razor View,我需要从模型中提取ID值,这样我就可以动态创建一个ActionLink。 ID也是用于访问View的参数。这似乎应该很容易,但我找不到如何的例子。

编辑:

我正在使用MVC 3

我希望能够使用模型的ID创建ActionLink。 所以我想做的就是这样:

$(document).ready(function () {
**var id = @Model.ID;**  //here is where I need help
var link = $("#PackingList");
var href = link.attr("href");
href = href.substring(0, href.length - 1);
href = href + id;
link.attr("href", href);
}

 @Html.ActionLink("Print Shipping Report", "ShippingPackingList", new { id = 0 }, new { id = "PackingList" })

1 个答案:

答案 0 :(得分:1)

获取该ID的最简单方法是将其放入HTML中的隐藏输入元素,然后获取javascript中的值。

HTML:

@Html.HiddenFor(x => x.ID, new { id = "coolIdForThisHiddenElement" })

Html.HiddenFor上的文档:http://msdn.microsoft.com/en-us/library/ee703622.aspx

然后在你的javascript中获得该值:

var id = $('#coolIdForThisHiddenElement').val();

编辑:看起来你在javascript中努力了。您应该能够在Html.ActionLink代码中包含模型的ID。你应该能够做到这一点:

@Html.ActionLink("Print Shipping Report", "ShippingPackingList", new { id = Model.ID }, new { id = "PackingList" })

注意id = Model.ID而不是id = 0?这会将模型中的ID放在生成的链接中。

相关问题