简体   繁体   English

在grails中使用JSON创建表

[英]Create table using JSON in grails

I have a action that give the JSON. 我有一个提供JSON的操作。 This is my JSON: 这是我的JSON:

{"code":0,"message":"SUCCESS","packet":{"id":"1","name":"unit1"}}

In gsp page, I want to display this json as a table like this 在gsp页面中,我想将此json显示为这样的表格

Id Name

1  unit1

Please give me some ideas regarding this. 请给我一些想法。

You can display your JSON element(Handling JSON in the same way as MAP) on the GSP page using each loop on the packet, something like: 您可以使用数据包上的每个循环在GSP页面上显示JSON元素(以与MAP相同的方式处理JSON),如下所示:

<table>
   <tr>
      <td>Id</td>
      <td>Name</td>
   </tr>
<g:each in="${receivedJson.packet}" var="packetInstance">
   <g:if test="${packetInstance}">
      <tr>
         <td>${packetInstance.id}</td>
         <td>${packetInstance.name}</td>
      </tr>
   </g:if>
</g:each>
</table>

Hope it may help :) 希望它可以帮助:)

Given that your action given JsonElement, You can treat json as a map. 鉴于您的操作已赋予JsonElement,您可以将json视为地图。

You can access id using 您可以使用

${jsonVar.packet.id}
and name using 和使用的名称

 ${jsonVar.packet.name} $ {} jsonVar.packet.name 

You can create a table dynamically and show in a div like: 您可以动态创建表并在div中显示,如下所示:

jQuery.ajax({
    url:"${createLink(controller: 'testController', action: 'testAction')}",
    success:function (data) {
    jQuery("#testDiv").html("<table class='some-class'><tr><td>Id</td><td>Name</td></tr><tr><td>" +
               data.packet.id + "</td><td>" + data.packet.name + "</td></tr></table>");
    }
});

and

<div id="testDiv"></div>

Try it..,. 试试吧..,。

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM