0

ViewModel を持つ Razor ビューがあり、モデルから ID 値を抽出して、ActionLink を動的に作成できるようにする必要があります。ID は、ビューを取得するために使用されるパラメーターでもあります。これは十分に簡単なはずですが、その方法の例が見つかりません。

編集:

私はMVC3を使用しています

モデルの 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" })
4

1 に答える 1

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で頑張りすぎているようです。モデルの ID を Html.ActionLink コードに含めることができるはずです。これを行うことができるはずです:

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

id = 0 ではなく id = Model.ID になっていることに注意してください。これにより、生成されたリンクにモデルの ID が挿入されます。

于 2012-08-03T22:26:15.133 に答える