ユーザーのリストがあるとしましょう:
ユーザー/Index.cshtml
@model IEnumerable<MvcHoist.Models.UserProfileViewModel>
<table>
@foreach (var user in Model)
{
@Html.Partial("_User", user)
}
</table>
@section Scripts {
@Scripts.Render("~/bundles/jqueryval")
}
...そして (パーシャルを使用して) 各ユーザーの横に、必要に応じて「フォロー」または「フォロー解除」リンクがあります。
_User.cshtml 部分
@model MvcHoist.Models.UserProfileViewModel
<tr>
<td>
@if (Model.IsFollowed)
{
@Ajax.ActionLink("Unfollow", "Unfollow", new { id = Model.UserProfile.UserId }, new AjaxOptions
{
HttpMethod = "POST"
})
}
else
{
@Ajax.ActionLink("Follow", "Follow", new { id = Model.UserProfile.UserId }, new AjaxOptions
{
HttpMethod = "POST"
})
}
</td>
</tr>
Follow アクションが正常に完了した後、「Follow」Ajax.ActionLink を「Unfollow」Ajax.ActionLink に置き換えるにはどうすればよいですか? linkText
と を変更して単一の Ajax.ActionLink を使用するactionName
ことも問題ありません。
これは純粋に Ajax.ActionLink で (jQuery に深く入り込むことなく) 実行できますか? 変更をアニメーション化すると、さらに効果的です。