2016-09-08 24 views
0

私はコントローラにデータを送信しようとしています。コントローラは ASP.NET MVCとAjaxでデータを送信

..ないコントローラにcorreclyが、クライアントからクライアントにすべてのデータを送る私のフロントコード: - これらのバージョンの非動作します

$(document).ready(function() { 

    $("#MessageSend").click(function() { 

     var serviceURL = '/User/Chat'; 

     var model = { 
      Message: $("#Message").val() 
     } 

     $.ajax({ 
      type: "POST", 
      url: serviceURL, 
      data: model, 
      contentType: "application/json; charset=utf-8", 
      dataType: "json", 
      success: successFunc, 
      error: errorFunc 
     }); 

     function successFunc(data, status) { 
      alert(data); 
     } 

     function errorFunc() { 
      alert('error'); 
     } 
    }); 
}); 

そして、私のコントローラ、私は2つのバージョンを持っています。

[HttpPost] 
public IActionResult Chat(ChatMessage model) 
{ 
    Console.WriteLine(model.Message); 
    return Json("chamara"); 
} 

[HttpPost] 
public IActionResult Chat(string Message) 
{ 
    Console.WriteLine(Message); 
    return Json("chamara"); 
} 

助けてくれてありがとう。

+1

'データ:JSON.stringify(モデル)'アクション間の曖昧 – Michael

+0

があります。同じ名前と動詞 - 最初のものを残します。 –

+0

ありがとう、すべての作品 – user3577896

答えて

0

JSON.stringify()メソッドは、あなたがJSONがその変更のための

data: JSON.stringify(model)

に「理解」できるような方法でデータを変更する必要があるので、 、JSON文字列にはJavaScript値に変換しますそれについての詳細な情報について

あなたのコードを見てみるとHere

+0

ありがとう!あなたは素晴らしいです – user3577896

0

を見て、あなたはユーザコントローラにJSONを送信しようとしているが、あなたのコントローラは、文字列(コントローラ例2)を期待しているようです。

また、「js-messageSend」などのjqueryを使用してイベントをバインドするための特定のクラスを作成することをお勧めします。将来的に何らかの理由でMessageクラスを変更する必要がある場合は、スクリプトが破損する可能性を最小限に抑えますが、イベントがあることを忘れてしまいます。

はこれを試してみてください:

$(document).ready(function() { 
    $("#MessageSend").click(function() { 

     var messageText = $("#Message").val(); 

     $.ajax({ 
      type: "POST", 
      url: '/User/Chat', 
      data: { Message: messageText }, 
      success: successFunc, 
      error: errorFunc 
     }); 

     function successFunc(data, status) { 
      alert(data); 
     } 

     function errorFunc() { 
      alert('error'); 
     } 
    }); 
}); 
+0

ありがとう、あなたは素晴らしいです! – user3577896

関連する問題