从 json 读取值
Read value from json
我正在使用 MVC4
我正在使用 Ajax 到 return 一个 JSon 值
function GetTopConnector(logoId) {
//Get all products for Memory
$.ajax({
type: "POST",
url:"Product/GetJsonTopConnectors",
contentType: "application/json;",
dataType: "json",
success: function(data) { OnSuccess(data); },
failure: OnFailure,
error: OnError
});
};
function OnSuccess(response) {
var obj = JSON.parse(response); // fails, as does JQuery.parse
var company = response[0].company;
var partNumber = response.partNumber;
var thumbnail = response["thumbnail"];
alert(company + " --- " + partNumber + " --- " + thumbnail + " --- ");
}
我的控制器是
public JsonResult GetJsonTopClickConnectors()
{
var connector = bll.Connectors.GetTopConnector();
var result = "{'partNumber':'" + connector.PartNumber + "','company':'" + connector.CompanyName + "','thumbnail':'" + connector.Thumbnail + "'}";
return Json(result);
}
上面'works'的意思是调用了OnSuccess js函数,response变量有值
根据我的阅读,该值已经是 Json 格式的值。如果我理解正确的话,JSon 没有特殊属性,它只是一个给定格式的字符串。正如您在我的 OnSuccess 函数中所见,我想将其视为一个对象。
Google 搜索建议我将其解析为一个对象,例如 JSON.parse() 但这会引发预期并且我的结果永远不会被填充。
目标是能够做到var company = response.company
我该怎么做?
var result = "{'partNumber':'" + connector.PartNumber + "','company':'" + connector.CompanyName + "','thumbnail':'" + connector.Thumbnail + "'}";
无法生成有效的 JSON('
不是 JSON 中的字符串分隔符)。使用 linter and find a C# library for generating JSON 测试输出,而不是通过将字符串混合在一起来测试输出。
我正在使用 MVC4
我正在使用 Ajax 到 return 一个 JSon 值
function GetTopConnector(logoId) {
//Get all products for Memory
$.ajax({
type: "POST",
url:"Product/GetJsonTopConnectors",
contentType: "application/json;",
dataType: "json",
success: function(data) { OnSuccess(data); },
failure: OnFailure,
error: OnError
});
};
function OnSuccess(response) {
var obj = JSON.parse(response); // fails, as does JQuery.parse
var company = response[0].company;
var partNumber = response.partNumber;
var thumbnail = response["thumbnail"];
alert(company + " --- " + partNumber + " --- " + thumbnail + " --- ");
}
我的控制器是
public JsonResult GetJsonTopClickConnectors()
{
var connector = bll.Connectors.GetTopConnector();
var result = "{'partNumber':'" + connector.PartNumber + "','company':'" + connector.CompanyName + "','thumbnail':'" + connector.Thumbnail + "'}";
return Json(result);
}
上面'works'的意思是调用了OnSuccess js函数,response变量有值
根据我的阅读,该值已经是 Json 格式的值。如果我理解正确的话,JSon 没有特殊属性,它只是一个给定格式的字符串。正如您在我的 OnSuccess 函数中所见,我想将其视为一个对象。
Google 搜索建议我将其解析为一个对象,例如 JSON.parse() 但这会引发预期并且我的结果永远不会被填充。
目标是能够做到var company = response.company
我该怎么做?
var result = "{'partNumber':'" + connector.PartNumber + "','company':'" + connector.CompanyName + "','thumbnail':'" + connector.Thumbnail + "'}";
无法生成有效的 JSON('
不是 JSON 中的字符串分隔符)。使用 linter and find a C# library for generating JSON 测试输出,而不是通过将字符串混合在一起来测试输出。