2016-09-05 4 views
0

投稿しないだろう私はブラウザF12コンソールエラーメッセージを取得しません。Ajax.ActionLinkは、私がAjax.ActionLink POSTを実装しようとしていますし、クリックされたとき、それはコントローラのGETに行くのいずれかまたは</p> <p>(私はjquery.unobrusive-ajax.jsを含む場合)何もしません

私はquery.unobtrusive-ajax.jsファイルを動かさずに動かしてみました。

Web.configファイルがあります。

<add key="UnobtrusiveJavaScriptEnabled" value="true" /> 

ajax.actionlink文は次のとおりです。

@Ajax.ActionLink(@item.Title, "GoogleDriveList", "GoogleDrive", 
    new { SelectedFolder = item.DriveId }, new AjaxOptions() { HttpMethod = "POST" }) 

HTMLソース表示している場合:あなたが動作するように任意の@Ajax機能について

<head> 
    <link href="/Content/bootstrap.css" rel="stylesheet"/> 
    <link href="/Content/bootstrap-datepicker3.css" rel="stylesheet"/> 
    <link href="/Content/site.css" rel="stylesheet"/> 
    <link href="/Content/jquery-ui.css" rel="stylesheet"/> 
    <script src="/Scripts/modernizr-2.6.2.js"></script> 
    <script src="/Scripts/jquery-2.1.4.js"></script> 
    <script src="/Scripts/jquery.validate.js"></script> 
    <script src="/Scripts/jquery.validate.unobtrusive.js"></script> 
    <script src="/Scripts/bootstrap.js"></script> 
    <script src="/Scripts/bootstrap-datepicker.js"></script> 
    <script src="/Scripts/respond.js"></script> 
    <script src="/Scripts/jquery-ui-1.11.4.js"></script> 
    <script src="/Scripts/jquery.unobtrusive-ajax.js"></script> 
</head> 

...navigation code 
... 

<form action="/GoogleDrive/GoogleDriveList" id="myFormID" method="post"> 
    <input name="__RequestVerificationToken" type="hidden" value="xxxxxxxxx" 
/>  

...form stuff... 

<a data-ajax="true" data-ajax-method="POST" 
    href="/GoogleDrive/GoogleDriveList?SelectedFolder=07BPctxxe8t9RcEpqbzYzV2x6NzA">Conf 001</a>  

</form> 

<script> 
... Some java script not related to Ajax.ActionLink 
</script> 

答えて

0

をしなければなりませんjquery.unobtrusive.jsライブラリへの参照を追加しますが、それはあなたのように思えます

[HttpPost] 
public ActionResult GoogleDriveList(int SelectedFolder) 
{ 
    return View(); 
} 

それがはたらく場合:私は疑うだけ他の事が問題になる可能性があるので、tはあなたがルーティングissue.ToがGoogleDriveController内のすべてのアクションメソッドをコメントアウトし、あなただけのこのアクションを持っていることを確認し、この疑いを確認する必要がありあり

+0

[HttpPost]コントローラActionResultの名前をGoogleDriveListPostに変更して、それを一意にしてみましたが、クリックするとAjax.ActionLinkステートメントが起動しませんでした。だから、私はをコメントアウトし、HttpGetだけを再起動します。私のインクルードスクリプトが順不同ですか? – John

+0

スクリプトを2回インクルードするとうまくいきません。マスター(レイアウト)ビューにスクリプトを含める場合は、子ページに再度スクリプトを含めないでください。メソッドに一意の名前を付ける場合は[ActionName( "NameOfYourMethod")]を使用する必要があります。 –

関連する問題

 関連する問題