4

いくつかの顧客数を取得するためにActionMethodに投稿しています。投稿は私のローカルマシンから正常に動作します。別のサーバーにデプロイされると、404エラーが発生します。私のポストは以下の通りです。なぜこれが機能しなくなったのか分かりません。jQuery Ajaxポスト404エラー

var urlStr = "/Items/ItemCount/";      
       jQuery.ajax({ 
        type: 'POST', 
        dataType: 'json', 
        url: urlStr, 
        async: false, //wait on the result to be returned...      
        success: function (DocData) { 
         window.currentCount = DocData[0]; 
         window.maximumAllowed = DocData[1]; 
        }, 
        cache: false, 
        error: function (request, status, error) { 
         alert(request.responseText); 
        } 
       }); 

<HttpPost()> _ 
    Function ItemCount() As JsonResult 

     Dim Items As List(Of MyItems) = GetItems() 
     Dim Total As Integer = Items .Count    
     Dim Max = 5 
     Dim Data As New ArrayList 
     Data.Add(TotalDocs) 
     Data.Add(MaxDocs) 
     Return Json(Data) 
    End Function 
+0

このコードを使用してみてください、あなたはスクリプトを指すようにパスを書き換えるために優しいURLのを使用していますか?そうでない場合は、フォルダにPOSTを送信しようとしています。 – riwalk

答えて

6

おそらく、他のマシンでは、アプリケーションを仮想ディレクトリに展開しているため、使用している絶対URLが見つかりませんでした。

ではなく

var urlStr = '<%: Url.Content("~/Items/ItemCount") %>'; 
1

urlStr/Items/ItemCount/に設定されています。サーバーにプッシュすると、ルートからそれらのファイルを検索しようとします(最初の '/'のため)。これを修正するには、絶対パスを使用するようにしてください。

関連する問題