gpt4 book ai didi

c# - 获取通过 json 从 Controller 作为 Hashtable 接收的 javascript 中的对象属性值

转载 作者:行者123 更新时间:2023-11-29 10:50:56 25 4
gpt4 key购买 nike

我在这里阅读了一些如何从对象获取属性值的主题。

在我的例子中,我在 Controller 中有一些东西:

[HttpPost]
public ActionResult GetSomething() {

return Json( new {
data = AModel.Get()
}, JsonRequestBehavior.AllowGet );

}

在模型中:

public static List<Hashtable> Get() {
List<Hashtable> list = new List<Hashtable>( 0 );
Hashtable table = new Hashtable();
table.Add( "ITEM_1", "Value1" );
table.Add( "ITEM_2", "Value 32" );
list.Add( table );

table = new Hashtable();
table.Add( "ITEM_1", "Value22" );
table.Add( "ITEM_2", "Other" );
list.Add( table );

return list;
}

在 Javascript 中:

var test;
$.ajax({
type: "post",
url: "Action/Controller",
data: {},
dataType: "json",
async: false,
success: function (data) {
test = data.data;
},
complete: function () {
console.log(test);
});

我进入控制台如下图所示:

enter image description here

我想获取属性 ITEM_1 的值和结果:Value1、Value22。

我试过

for(var key in test) {
console.log(test[key].ITEM_1);
//console.log(test[key].ITEM1);
}

但它不起作用。

当然,我将 ITEM_1 键重命名为 ITEM1(在模型中)但结果相同:undefined 但在控制台中我看到了值所有对象。

enter image description here

请帮帮我

最佳答案

test 是一个数组而不是一个对象。像这样遍历数组:

var testLength = test.length;            //caching length, performance benefit
i, item1;

for(i=0;i<testLength;i++){
item1 = test[i].Properties.ITEM1;
}

关于c# - 获取通过 json 从 Controller 作为 Hashtable 接收的 javascript 中的对象属性值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10479330/

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