クライアント側のIDを取り扱いASP.NET MVCれるrenderPartial
-
12-09-2019 - |
質問
私は
を使用して、いくつかの部分的なビューを表示するビューを持っているMVCプロジェクトに取っていますHtml.RenderPartial("ClientDetail", model);
Html.RenderPartial("PlanSummary", model);
私が持っている問題は、これらの部分図の中、同一のIDを持つコントロールが生成されていることです。上記の部分的なビューの両方がこのラインを持っています:
Html.Hidden("Surname", Model.Surname)
これは、2つの要素が同じIDのレンダリングされた出力に表示される無効なHTMLを作成します。
これを固定する他の方法は離れて「Surname1」、「Surname2」などを使用してから、あります。
解決
これを試してください:
<%= Html.RenderPartial("ClientDetail", model, new ViewDataDictionary {{"PartialId", 1}}) %>
<%= Html.RenderPartial("PlanSummary", model, new ViewDataDictionary {{"PartialId", 2}}) %>
部分的な見解でます:
Html.Hidden("Surname" + HtmlEncode(ViewData["PartialId"]), Model.Surname)
<!-- or -->
Html.Hidden("Surname" + PartialId, Model.Surname)
<script runat="server">
protected string PartialId {
get {
return HtmlEncode(ViewData["PartialId"]);
}
}
</script>
所属していません StackOverflow