我有一个json结构如下: [{“text”:“US”,“value”:“United Sates”},{“text”:“CA”,“value”:“Canada”}]
我创建了一个servlet来填充组件的下拉列表。 我的servlet:
while (node.hasNext()) {
Node child = node.nextNode();
if (child.hasProperty("nationcode") && child.hasProperty("nationname")) {
JSONObject json = new JSONObject();
json.put("text", child.getProperty("nationcode").getValue().getString());
json.put("value", child.getProperty("nationname").getValue().getString());
jsonArray.put(json);
}
}
response.setContentType( “应用程序/ JSON”); 。response.getWriter()写(jsonArray.toString());
我的组件有options =“bin /”
我尝试仅填充值,但它只能在下拉列表中填充“text”。如何确保我的组件下拉列表仅填充值而不填充键(文本)?
答案 0 :(得分:0)
我已经实现了类似的方法,并记住渲染您显示的格式不起作用。我想我提取了geometrixx在其下拉列表中使用的格式(不确定确切的路径)
我用作响应的JSON格式是
[{"text":"US","value":"United States","qtip":""}, {"text":"CA","value":"Canada","qtip":""}]
我有了所需详细信息的列表 我在下面使用了渲染所需的JSON格式
for (Object object : allObjects) {
for (int i = 0; i < 3; i++) {
jsonOut.put("qtip", "");
jsonOut.put("text", object.getTitle());
jsonOut.put("value", object.getDescription());
response.setContentType("application/json");
response.setCharacterEncoding("utf-8");
log.debug("jsonOut is {}", jsonOut);
}
}
这对我有用。