AJAX POST不发送数据.Net Core数据、POST、AJAX、Net

由网友(一曲冷凌霜)分享简介:我有以下脚本。@username是来自模型的变量。var username = "@username"$.ajax({url: '@Url.Action("fetchChatsForUser")',data: { Username: username },type: "POST",dataType: '...

我有以下脚本。@username是来自模型的变量。

  <script>
                    var username = "@username"
                    $.ajax({

                          url: '@Url.Action("fetchChatsForUser")',
                          data: { Username: username },
                          type: "POST",
                          dataType: 'JSON',
                          contentType: "application/json",
                          success: function (e) {
                              console.log(e);
                              $("#Chatroom").html(e)
                          },
                          error: function (passParams) {
                              console.log("Error is " + passParams);
                          }
                      })

</script>
我检查了username的值,它不是空的或空的,它正在工作。然而,在我的控制器中,当fetchChatsForUserajax调用时,发送的数据为空。 这是控制器

public IActionResult fetchChatsForUser(string Username)
    {
        Chat Chats = new Chat();
        
        return PartialView("_Chatroom", Chats);
    }
即使IM在AJAX中传递数据,string Username中的控制器也始终为空。不过,该方法确实会被调用。我在这里做错了什么

推荐答案

AJAX使用POST,函数为GET。因此您需要将[HttpPost]

[HttpPost]
public IActionResult fetchChatsForUser(string Username)
.netcore使用ajax向后台传递对象参数时,踩到的坑

或者您尝试这个jQuery。

<script>
var username = "@username";
$.post('@Url.Action("fetchChatsForUser")', { Username: username }).done(function (e) {
   console.log(e);
   $("#Chatroom").html(e);
});
</script>
阅读全文

相关推荐

最新文章