JSTL, как получить каждый элемент строки JSON - PullRequest
0 голосов
/ 31 мая 2019

У меня есть следующая строка JSON

[{"nombre":"Estadias Taller serieLoc. 251","array":[{"valores":

[{"nombre":"LUGO DE LLANERA","valor":1.89}],"ejeX":"IB1"},{"valores":[{"nombre":"LUGO DE LLANERA","valor":3.32}],"ejeX":"IB2"},{"valores":[{"nombre":"BARCELONA CAN TUNIS","valor":2.29},{"nombre":"LUGO DE LLANERA","valor":1.41},{"nombre":"TARRAGONA","valor":3.51}],"ejeX":"IS"}]},
{"nombre":"Estadias Taller serieLoc. 252 Merc","array":[{"valores":[{"nombre":"BARCELONA CAN TUNIS","valor":2.31}],"ejeX":"ES1"}]}]

Эта строка json состоит из двух элементов. Первый

 [{"nombre":"Estadias Taller serieLoc. 251","array":[{"valores":[{"nombre":"LUGO DE LLANERA","valor":1.89}],"ejeX":"IB1"},{"valores":[{"nombre":"LUGO DE LLANERA","valor":3.32}],"ejeX":"IB2"},{"valores":[{"nombre":"BARCELONA CAN TUNIS","valor":2.29},{"nombre":"LUGO DE LLANERA","valor":1.41},{"nombre":"TARRAGONA","valor":3.51}],"ejeX":"IS"}]}

Второй -

{"nombre":"Estadias Taller serieLoc. 252 Merc","array":[{"valores":[{"nombre":"BARCELONA CAN TUNIS","valor":2.31}],"ejeX":"ES1"}]}]

Я хочу получить эти два элемента, используя jstl

У меня есть следующее для каждого

<c:forEach items="${vgraficas}" var="grafica"  >
        <p> grafica xxxx <c:out value="${grafica}" /></p>

</c:forEach>

Но этот цикл получает каждый элемент в строке, а не только два

grafica xxxx [{"nombre":"Estadias Taller serieLoc. 251"

grafica xxxx "array":[{"valores":[{"nombre":"LUGO DE LLANERA"

grafica xxxx "valor":1.89}]

grafica xxxx "ejeX":"IB1"}

grafica xxxx {"valores":[{"nombre":"LUGO DE LLANERA"

grafica xxxx "valor":3.32}]

grafica xxxx "ejeX":"IB2"}

grafica xxxx {"valores":[{"nombre":"BARCELONA CAN TUNIS"

grafica xxxx "valor":2.29}

grafica xxxx {"nombre":"LUGO DE LLANERA"

grafica xxxx "valor":1.41}

grafica xxxx {"nombre":"TARRAGONA"

grafica xxxx "valor":3.51}]

grafica xxxx "ejeX":"IS"}]}

grafica xxxx {"nombre":"Estadias Taller serieLoc. 252 Merc"

grafica xxxx "array":[{"valores":[{"nombre":"BARCELONA CAN TUNIS"

grafica xxxx "valor":2.31}]

grafica xxxx "ejeX":"ES1"}]}]

Как я могу получить два элемента этого массива json?

1 Ответ

0 голосов
/ 31 мая 2019

Предполагая, что типом значения vgraficas в java является String.

  1. Используйте функцию JavaScript JSON.parse () для преобразования String в объект JavaScript.Предположим, что это объект.
  2. Теперь этот объект в основном массив объектов.таким образом, внешний List будет содержать массив Object (т.е. Object []), который необходимо повторить еще раз для выборки каждого элемента объекта один за другим.
<c:forEach items="${obj}" var="outerVar"> 
      <c:forEach items="${outerVar}" var="innerVar"> // outerVar will hold your object array
         <c:out value="${innerVar}" /> // iterating the object array 
      </c:forEach>
  </c:forEach>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...