ビューの div に (ボタン クリックで) 部分ビューをロードするための jQuery を持つビューがあります。これは問題なく動作します。ただし、部分ビュー内には、別の部分ビューを最初の部分ビューの div にロードする非常によく似た jQuery がありますが、これは機能していません。最初の部分ビューの jQuery が機能していないようです。読み込まれました。
解決策を探してみましたが、答えを見つけることができませんでした。また、正常に動作する jQuery 関数を再作成しましたが、jQuery@Ajax.ActionLink
を学習しようとしているときに Microsoft ヘルパーを回避しようとしています。
これは、動作していないように見える jQuery を含む最初の部分ビューです。動作するものも含まれて@Ajax.ActionLink
います。
@model MyProject.ViewModels.AddressIndexViewModel
<script>
$(".viewContacts").click(function () {
$.ajax({
url: '@Url.Action("CustomerAddressContacts", "Customer")',
type: 'POST',
data: { addressID: $(this).attr('data-addressid') },
cache: false,
success: function (result) {
$("#customerAddressContactsPartial-" + $(this).attr('data-addressid'))
.html(result);
},
error: function () {
alert("error");
}
});
return false;
});
</script>
<table class="customers" style="width: 100%">
<tr>
<th style="width: 25%">
Name
</th>
<th style="width: 25%">
Actions
</th>
</tr>
</table>
@foreach (Address item in Model.Addresses)
{
<table style="width: 100%; border-top: none">
<tr id="address-id-@item.AddressID">
<td style="width: 25%; border-top: none">
@Html.DisplayFor(modelItem => item.Name)
</td>
<td style="width: 25%; border-top: none">
<a href="#" class="viewContacts standardbutton" data-addressid="@item.AddressID">ContactsJQ</a>
@Ajax.ActionLink("Contacts", "CustomerAddressContacts", "Customer",
new { addressID = item.AddressID },
new AjaxOptions { UpdateTargetId = "customerAddressContactsPartial-" + @item.AddressID, HttpMethod = "POST" },
new { @class = "standardbutton"})
</td>
</tr>
</table>
<div id="customerAddressContactsPartial-@item.AddressID"></div>
}
ここで私が間違っていることとそれを修正する方法を誰かが説明できれば、とても感謝しています。
どうもありがとう。