繁体   English   中英

如何从Java Rest服务在引导表中显示Java Hashmap.keySet()?

[英]How to display Java Hashmap.keySet() in a bootstrap table, from a java rest service?

我正在尝试在引导表中显示哈希映射键集,但仅显示第一个字符。

这是我的休息服务功能:

@GET
@Path("getquizes")
@Produces(MediaType.APPLICATION_JSON)
public Collection<String> getQuizes() {
    System.out.println(activeQuizes.keySet());
    return activeQuizes.keySet();
}

这是工作。 这就是我收到的:

收到的Json对象

这是我的HTML:

         <table data-toggle="table" id="tablequizes" class="display table table-bordered">
            <thead>
            <tr>
                <th datatype="String">Name</th>
            </tr>
            </thead>
        </table>

而我的javascript:

function fetchQuizes() {
    $.ajax({
        url: 'rest/Quiz/getquizes',
        type: 'GET',
        datatype: 'json',
        success: function (data) {
            console.info(data);
            $('#tablequizes').bootstrapTable('load', data);
        },
        error: function (result) {
            console.info(result.responseText);
        }
    });
}

但是结果仅显示数组中的第一个字符:

具有哈希映射键集的Bootstrap数据表

我认为您对keySet()给您的内容有误:

Returns a Set view of the keys contained in this map.

您只获得键,而不获得地图的值。 要获取值,请使用values()

Returns a Collection view of the values contained in this map

activeQuizes.values(); //Try with this.

您可以尝试在JS中将ajax输出内容表查询更改为带有名称ID的数组。

Eg: [ {"name": "Quiz1"}, {"name": "Quiz2"} ] 

并修改th标签

<th data-field="name">Name</th>

这应该可以解决您的问题。

暂无
暂无

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

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