gpt4 book ai didi

jquery - 将 json 数据从 Controller 传递到 View

转载 作者:行者123 更新时间:2023-12-01 07:10:18 24 4
gpt4 key购买 nike

部分 View :

var dataa;
$.ajax({
url: ServerUrl + '/Dashboard/GetData',
type: 'POST',
cache: false,
dataType: 'text',
async: true,
error: function (xhr) {
//alert('Error: ' + xhr.statusText);
},
success: function (result) {
debugger;
dataa = result;
var chart = c3.generate({
data: {
type: 'bar',
json: [
dataa
],
keys: {
x: 'indicator',
value: ['total']
}
},
axis: {
x: {
type: 'category'
}
},
bar: {
width: {
ratio: 0.5
}
}
});
}
});

Controller Json代码

public string GetData()
{
return "{ 'indicator': 'X', 'total': 100 },{ 'indicator': 'Y', 'total': 200 },{ 'indicator': 'Z', 'total': 300 }";
}

当我使用上面的代码时,它不起作用,但是如果我传递 this JS Fiddle 中指定的 json 数据链接,它有效。我是否从 Controller 错误地传递了 JSON 数据?

请帮忙。

最佳答案

您不会从 GetData 方法返回 JSON。这样做返回JSON

public JsonResult GetData()
{
var data = new[] {
new { indicator= "X", total = 100 },
new { indicator= "Y", total = 200 },
new { indicator= "Z", total = 300 }
};

return Json(data,JsonRequestBehavior.AllowGet);
}

并进行 ajax 调用,如下所示:

 $.ajax({
cache: false,
type: "GET",
url:URL,
dataType: 'json',
success: function (result)
{
console.log(result);
},
error: function (xhr, ajaxOptions, thrownError)
{
alert('Failed to retrieve data.');
}
});

关于jquery - 将 json 数据从 Controller 传递到 View ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29114665/

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