尝试从隐藏的输入值中读取JSON。
<html>
<body>
<input id="hdn" type="hidden" value='{"products":{"id":100001,name:"Ram"}}'>
<script type="text/javascript">
var jsonObj = document.getElementById('hdn').value;
alert(jsonObj);
alert(jsonObj.products.name);
</script>
</body>
</html>
答案 0 :(得分:4)
您需要将其解析为var jsonObj = JSON.parse(document.getElementById('hdn').value)
注意,我通过在name
属性中添加引号来更改存储JSON对象的方式。我添加了console.log和一个警报...主要是因为我更喜欢console.log,但你最初有一个警报。
这是更新的(工作)代码:
<html>
<body>
<input id="hdn" type="hidden" value='{"products":{"id":100001,"name":"Ram"}}'>
<script type="text/javascript">
var jsonObj = JSON.parse(document.getElementById('hdn').value);
console.log(jsonObj);
console.log(jsonObj.products.name);
alert(jsonObj);
alert(jsonObj.products.name);
</script>
</body>
</html>