我有一个JSON,但我不知道它的结构(即将到来的键/值对),我需要在html中显示该信息。我解析即将到来的字符串,并循环它,以便能够以一种良好的方式在页面上显示信息。
<script type="text/javascript" language="JavaScript">
var jsonString = '#{CertificadoBean.certificado.resumen}';
var myObj = JSON.parse(jsonString);
for ( var x in myObj) {
if (myObj[x] instanceof Array) {
document.getElementById("json").innerHTML += "<p>" + "" + "<b>" + x + "</b>" + ": "+JSON.stringify(myObj[x]);
}
else {
document.getElementById("json").innerHTML += "<p>" + "" + "<b>" + x + "</b>" + ": " + myObj[x];
}
}
</script>但是,在某些情况下,它会打印出以下内容:
Nivel matriculado: 10
Periodo matriculado: 2019-02
Periodos matriculados: 10
Cursos pendientes:[{"Cod.":"NIP01","Nivel":9},{"Cod.":"NI043","Nivel":10},{"Cod.":"ALE10","Nivel":10}]当循环在json中找到一个数组时,我不能很好地显示信息,并且我不确定如何正确地循环数组,以便像对象的其余部分一样以清晰的方式显示。
我如何使Cursos pendientes像其他的一样显示得很好?
发布于 2019-09-13 00:02:54
要做到这一点,你应该在javascript中使用JSON.stringify。
var str = JSON.stringify(obj, null, 2);其中obj是您的json。null是一个替换函数(不使用),2是一个间隔(打印时的间隔)
然后,您可以将字符串形式的json放在页面上。
document.body.innerHTML = str点击此处查看更多信息:Mozilla Developer Json.stringify Reference
https://stackoverflow.com/questions/57910492
复制相似问题