【问题标题】:Present JSON data to a play framework template将 JSON 数据呈现给播放框架模板
【发布时间】:2012-07-05 20:46:09
【问题描述】:

尝试在没有任何 JQuery 详细知识的情况下使其工作。我真的很难找到一个易于理解的示例,说明如何从我传递到 String 对象内部的一些 json 中创建一个无编号列表。

我正在使用 Play!框架。我的应用程序有一个方法,它返回一个包含 json 项目数组的字符串。

GET     /items                       controllers.Application.items()

方法如下:

public static Result items() {      
    return ok(Json.toJson(Item.all()));
}

您将如何处理这些数据以使您的模板将其显示为无编号列表?

数据,示例:

@Entity
public class Item {

@Id
@GeneratedValue(strategy=GenerationType.AUTO)
public int id;
public String title;

public String type;
public int quantity;
public BigDecimal unitPrice;

public Item() {}

public static List<Item> all() {
    EntityManagerFactory entityManagerFactory = Persistence.createEntityManagerFactory("defaultPersistenceUnit");
    EntityManager entityManager = entityManagerFactory.createEntityManager();

    TypedQuery<Item> query = entityManager.createQuery("SELECT i FROM Item i", Item.class);
    return query.getResultList();
}

【问题讨论】:

    标签: javascript json playframework playframework-2.0


    【解决方案1】:

    您需要使用 javascript ajax 请求调用 items() 操作。然后你可以使用 javascript 和 jQuery 来创建你的列表。

    类似这样的:

    <script type="text/javascript">
        $(function(){
            $.getJSON('/items', function(items){
                var ul = $('<ul>');
                $.each(items, function(item){
                    var li = $('<li>').text(item.title);
                    ul.append(li);
                });
    
                $('body').append(ul);
            });
        });    
    </script>
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2014-07-23
      • 2013-09-22
      • 1970-01-01
      • 1970-01-01
      • 2012-06-24
      • 2013-05-10
      • 1970-01-01
      相关资源
      最近更新 更多