15

Razor を使用して MVC 4 で $.ajax を使用して AJAX リクエストを作成しようとしています。実装方法がわかりません。

このビデオを使用して、データを返すリンク駆動型呼び出しを正常に行うことができましたが、jquery 関数内から同じことを行うことはできないようです。これを行う方法の基本的な例が見つからないようです。これは私が取り組んでいるものです:

HomeController.cs

        public string test(){
             return "It works";
        }

View.cshtml

function inventory(dealerID) {
    $.ajax({
        url: '@Url.Action("HomeController","test")',
        data: {dealerID: dealerID},
        type: 'POST',
        success: function(data) {
            process(data);
        }
    });
}
4

1 に答える 1

28

にするだけですActionResult。また、Ajax POST を使用している場合は、アクションをHttpPost属性でマークする必要があります。これを試して:

[HttpPost]
public ActionResult test(string dealerID)
{
    return Content("It works");
}

編集実際には、構文には他にもいくつかの問題があります。

  1. Url.Actionコントローラ/アクション パラメータの順序が間違っています -- 最初に「ActionName」、次に「ControllerName」にする必要があります
  2. の場合Url.Action、コントローラ クラスが「HomeController」の場合は、「Home」だけが必要です。
  3. JQuery オプションの構文が間違っていますsuccess: function(data) {}

$.ajax({
    url: '@Url.Action("test", "Home")',
    data: {dealerID: dealerID},
    type: 'POST',
    success: function(data) {
        alert(data);
    }
});
于 2012-10-22T21:01:52.943 に答える