Ajax呼び出しでMVC Webサイトを作成しようとしています。私は直接jqueryを使用しても問題はありませんが、@ Ajax.ActionLinkを使用すると、結果が得られません。 は、ここに私の見解である:MVC 4 Ajax.Actionリンクが動作しません
<script type="text/javascript">
function deleteComment(id) {
$.post(
"/Role/AjaxTest",
//{ id: id },
function (data) {
$("#testtarget").html(data);
});
}
</script>
<script src="@Url.Content("~/Scripts/jquery.unobtrusive-ajax.min.js")" type="text/javascript"></script>
<h2>TITLE</h2>
<p>
@Ajax.ActionLink("Ajax Test", "AjaxTest", "Role", new AjaxOptions{UpdateTargetId="testtarget",HttpMethod = "Get" , InsertionMode = InsertionMode.Replace })
</p>
<table>
@foreach (var item in Model) {
<tr>
<td>
@Html.DisplayFor(modelItem => item.RoleName)
</td>
<td>
<a onclick="deleteComment('@item.RoleId'); return false;" href="#">Delete</a>
@Html.ActionLink("Delete", "Delete", new { id=item.RoleId })
</td>
</tr>
}
</table>
<div id="testtarget">Test Div</div>
とここに私のcontrolerデータである:
public string AjaxTest()
{
return "Some random text";
}
jQueryの上の私のコールが完璧に動作し、テキストはdivの中に表示されますが、私のActionLinkのはちょうどに私をリダイレクトしますローカルホスト/ロール/ AjaxTestので、私はちょうど銀行のブラウザでメッセージを持っている。
何が間違っていますか?
ありがとうございます!
<script type="text/javascript" src="~/scripts/jquery.unobtrusive-ajax.js"></script>
またはあなたがこのスクリプトを含むバンドルが含まれていることを確認してください(推奨されるアプローチである)のバンドルを使用している場合を:
'jquery.unobtrusive-ajax.min.js'ファイルがロードされていますか? –
はい、私のウェブページのソースのリンクをクリックすると、が開きます。 – Tom