gpt4 book ai didi

c# - 如何将 C# 对象传递给 $.ajax

转载 作者:行者123 更新时间:2023-11-29 17:16:08 26 4
gpt4 key购买 nike

我有一个简单的 JavaScript 代码,我想在其中从 Controller 获取一个对象并在脚本中对其进行解析,但在脚本中,我无权访问该对象的任何属性。

我的对象(在 Controller 中):

public class userData
{
public string firstName { get; set; }
public string lastName { get; set; }
public string state { get; set; }
public bool success { get; set; }
}

脚本:

function  load()
{
var sender = {
userNo : $("#userNo").val(),
}
$.ajax({
type : "POST",
url : "testGetUser",
data : sender,
success:function(data)
{
if(1)
{
$("#section #result0").html(data.firstName);
$("#section #result1").html(data.lastName);
$("#section #result2").html(data.state);
$("#section").slideDown().delay(1000).slideUp();
}
}
});
}

Controller :

[HttpPost]
public userData testGetUser(long userNo)
{
userData result = new userData();

result.firstName = Session["firstName"].ToString();
result.lastName = Session["lastName"].ToString();
result.state = Session["country"].ToString();
result.success = true;

return result;
}

最佳答案

在 Controller 中,使用这个:

[HttpPost]
public JsonResult testGetUser(long userNo)
{
userData result = new userData();

result.firstName = Session["firstName"].ToString();
result.lastName = Session["lastName"].ToString();
result.state = Session["country"].ToString();
result.success = true;

return Json(result);
}

您似乎没有使用变量 userNo,所以您最好使用这样的 GET 请求:

public JsonResult testGetUser(/*remove parameter*/)
{
userData result = new userData();

result.firstName = Session["firstName"].ToString();
result.lastName = Session["lastName"].ToString();
result.state = Session["country"].ToString();
result.success = true;

return Json(result, JsonRequestBehavior.AllowGet);
}

JavaScript 现在想变成这样:

function  load()
{
$.ajax({
type : "GET",
url : "testGetUser",
success:function(data) {
$("#section #result0").html(data.firstName);
$("#section #result1").html(data.lastName);
$("#section #result2").html(data.state);
$("#section").slideDown().delay(1000).slideUp();
}
});
}

关于c# - 如何将 C# 对象传递给 $.ajax,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17653246/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com