Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/413.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
JSON对象属性显示为";0“;在javascript中_Javascript_C#_Jquery_Json_Asp.net Mvc - Fatal编程技术网

JSON对象属性显示为";0“;在javascript中

JSON对象属性显示为";0“;在javascript中,javascript,c#,jquery,json,asp.net-mvc,Javascript,C#,Jquery,Json,Asp.net Mvc,我有一些服务器端方法返回一个JSON对象,我的JS解析该对象,并尝试通过属性枚举该对象,以使用与属性值相同的名称设置输入。我的应用程序在ASP.NETMVC5中,JSON工作正常 这是我的JS: function ProcessPropertyChange(url, name) { var val = $("[name='" + name + "'").val(); url = url + "&propValue=" + val; $.get(url, functi

我有一些服务器端方法返回一个JSON对象,我的JS解析该对象,并尝试通过属性枚举该对象,以使用与属性值相同的名称设置输入。我的应用程序在ASP.NETMVC5中,JSON工作正常

这是我的JS:

function ProcessPropertyChange(url, name)
{
   var val = $("[name='" + name + "'").val();
   url = url + "&propValue=" + val;

    $.get(url, function (data) {
        var obj = JSON.parse(data);
        for (var prop in obj)
        {
            if(obj.hasOwnProperty(prop))
            {
                $("[name='" + prop + "'").text = obj[prop];
                alert(prop);
            }
        }
    });
}
JSON字符串示例如下:

[{"FullAddress" : "123 w. oak", "ParentName":""}]
这是从我的代码中提取的

当我在开发人员控制台中查看我的对象时,我可以看到具有正确的
名称、FullAddress和ParentName的属性,但是当我尝试通过它们进行枚举时,
返回“0”,并且obj[prop]的值始终是[object object]

有什么想法吗?如果需要,可以发布更多代码


谢谢

obj
是一个数组,它的成员是一个对象,因此该对象的索引为0…length-1,这就是得到0的原因

如果您希望数组只有1个值,那么不要返回数组,而是返回对象,否则在js代码中从数据的
0
th索引中读取对象。您还可以像这样使用$.each()


可能是输入错误,但示例代码中缺少结尾“]”:
$(“[name=”+prop+“]”)。text=obj[prop]
我想知道您是否真的需要
var obj=JSON.parse(数据)。您正在使用对象数组
$.get(url, function (data) {
    //since data is an array
    var obj = data[0];
    $.each(obj, function (value, prop) {
        $("[name='" + prop + "'").text = value;
        alert(prop);
    })
}, 'json');