Javascript 无法访问对象属性angularjs
HTML: 输出:Javascript 无法访问对象属性angularjs,javascript,angularjs,Javascript,Angularjs,HTML: 输出: console.log(outlet) console.log(outlet._id) var selectedoutlet = {"_id":"554c930c79d26026307a5a9d","name":"Model Town","city":"Default"}; console.log(selectedoutlet); console.log(selectedoutlet._id) 为什么我不能访问outlet对象的属性?我如何解决这个问题? 我可以看出这是因为
console.log(outlet)
console.log(outlet._id)
var selectedoutlet = {"_id":"554c930c79d26026307a5a9d","name":"Model Town","city":"Default"};
console.log(selectedoutlet);
console.log(selectedoutlet._id)
为什么我不能访问outlet对象的属性?我如何解决这个问题?
我可以看出这是因为我的对象属性是字符串,但我该如何解决这个问题呢?我当然不想循环和匹配字符串。我只需要访问对象属性。如果您的outlet变量是字符串而不是对象,那么转换为对象的最佳方法是使用
JSON.parse(outlet)
使用ng选项将模型作为所选元素的JSON,如果使用ng repeat,则将模型作为字符串绑定到选项值。以下是它应该是什么样子:
{"_id":"554c930c79d26026307a5a9d","name":"Model Town","city":"Default"}
undefined
{_id: "554c930c79d26026307a5a9d", name: "Model Town", city: "Default"}
554c930c79d26026307a5a9d
检查进一步解释。为什么不使用
ng选项
而不是ng repeat
?
{"_id":"554c930c79d26026307a5a9d","name":"Model Town","city":"Default"}
undefined
{_id: "554c930c79d26026307a5a9d", name: "Model Town", city: "Default"}
554c930c79d26026307a5a9d
<select ng-model="outlet" ng-options="outlet.name for outlet in outlets" ng-change="display()">
</select>