由网友(一曲冷凌霜)分享简介:我有以下脚本。@username是来自模型的变量。var username = "@username"$.ajax({url: '@Url.Action("fetchChatsForUser")',data: { Username: username },type: "POST",dataType: '...![.netcore使用ajax向后台传递对象参数时,踩到的坑](https://p.xsw88.cn/allimgs/daicuo/20230903/2035.png)
我有以下脚本。@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
的值,它不是空的或空的,它正在工作。然而,在我的控制器中,当fetchChatsForUser
被ajax
调用时,发送的数据为空。
这是控制器
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向后台传递对象参数时,踩到的坑](https://p.xsw88.cn/allimgs/daicuo/20230903/2035.png)
或者您尝试这个jQuery。
<script>
var username = "@username";
$.post('@Url.Action("fetchChatsForUser")', { Username: username }).done(function (e) {
console.log(e);
$("#Chatroom").html(e);
});
</script>
相关推荐
最新文章