私は3つの部分的なビューを持っています
ビュー 1:
//_yard.cshtml
@model Yard
<div>@Model.Name</div>
<div class="yard"></div>
@foreach(var house in Model.Houses)
{
<script type="text/javascript">
$(document).ready(function{
$(".yard").load("/community/Houses");
});
</script>
}
ビュー 2
//_houses.cshtml
@model House
<div>@Model.Name<div>
<div class="house"></div>
@foreach(var level in Model.levels)
{
<script type="text/JavaScript">
$(document).ready(function{
$(".house").load("/Community/Levels");
});
</script>
}
ビュー 3:
//_levels.cshtml
@model Level
<div>@Model.Name<div>
<div class="room"></div>
@foreach(var room in Model.Rooms)
{
<script type="text/JavaScript">
$(document).ready(function{
$(".room").load("/Community/Rooms");
});
</script>
}
上記のサンプルは、 をView 1
使用して別のビュー内にa をロードしjQuery Load()
、次にView 2
withingをロードすることを示していView 1
ますが、最初の load() は正常に動作しますが、後続のロードは起動しません。
機能がリセットされていないことが原因だと思いますが$(document).ready();
、ロードごとにリセットする方法がわかりません。
MVC で解決 された問題 デフォルトのテンプレートは、ページの下部に jQuery スクリプトをレンダリングします。それを一番上に移動すると、ajax の読み込みが機能しました。
これは意味がないことはわかっていますが、問題は解決しました。これで問題が解決する理由についてもう少し調査した後、質問を更新します。