私のメイン ビューでは、空のプレースホルダー div があり、ユーザーがクリックすると内部ビューが表示されます。メイン ビューに同じ内部ビューの複数のコピーを作成し、各内部ビューに異なるデータを関連付けたいと考えています。
メイン ビューには独自のモデルとコントローラーがあり、内部ビューには独自のモデルとコントローラーがあります。メイン ビューでアイテムが選択されると、内側のビューには選択に関連するデータが表示されます。選択された項目の ID に基づいて Web サービスからこのデータを取得するため、その時点まで内部ビューのモデルにデータを入力することはできません。
複数のビュー div がすべて同じ ID を持つことはできないため、@Ajax.ActionLink
withのようなものは使用できませんUpdateTargetId
。代わりに、それを宣言し<div class='placeholderDiv' title='@[some_unique_id]'>
、メイン ビューで以下を使用して複数の div を正常に描画できます。
$.ajax(
{
type: 'POST',
data: { 'id': id },
dataType: 'html',
url: '/MyController/MyMethod',
success: function (result) {
$(".placeholderDiv[title=" + id + "]").html(result);
}
});
ここで、ユーザーが内部ビューでモデルを更新できるようにしたいと考えています。内部ビューのコントローラーでこれを行うことはできますが、変更を表示できません。placeholderDiv
内部ビューから、メイン ビューのクラスで div にアクセスするにはどうすればよいですか?