1つのビューで複数回使用されるフォームに名前とIDを入力するために、インデックスを追加するにはどうすればよいですか?
各写真(ビルボード)のコンテキスト固有のキャプションを編集する機能を提供するフォトローテーターのフォームを作成しました。管理者がローテーターの写真セットのすべてのキャプションを1つのビューで編集できるように、このフォームフィールドの複数のインスタンスを含めることができる必要があります。そのため、IDとフィールド名を一意に保つ方法が必要です。
エディターテンプレートは自動的にプレフィックスを追加しますが、次のように写真をループすると:
<% foreach (var billboard in Model.Billboards ) { %>
<%: Html.EditorFor(x => billboard, "BillboardForm")%>
<% } %>
プレフィックスとして「billboard_」を追加するだけで、問題は解決しません。
各入力名とIDの最後にローテーターIDビルボードIDを追加したいと思います。
<form action="/Rotators/Edit/5" method="post">
<input id="billboard_21_RotatorId" name="billboard_21_RotatorId" type="hidden" value="5" />
<input id="billboard_21_ImageId" name="billboard_21_ImageId" type="hidden" value="19" />
<label for="billboard_21_Title">Title</label>
<textarea cols="20" id="billboard_21_Title" name="billboard_21_Title" rows="2">Title</textarea>
<label for="billboard_21_Caption">Caption</label>
<textarea cols="20" id="billboard_21_Caption" name="billboard_21_Caption" rows="2">This is the caption</textarea>
<select id="billboard_21_TopicId" name="billboard_21_TopicId">
<option value="1">1st option</option>
</select>
</form>
これを行う簡単な方法はありますか?