首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在jsp中解析数组列表数据和json数据

如何在jsp中解析数组列表数据和json数据
EN

Stack Overflow用户
提问于 2014-07-15 22:11:14
回答 2查看 3.6K关注 0票数 0

我的jsp页面中有两组数据,一组是array list,另一组是json data。现在我想解析数据集并创建我自己的下拉列表。

以下是名为json_obj Array List的示例数据

["ABC-1","ABC-2","ABC-3","ABC-4","ABC-5","ABC-6"]

我试过这段代码,但不起作用

代码语言:javascript
复制
<select>
  <option value="all_qns">All</option>
  <c:forEach var="strategy" items="${json_obj}" varStatus="strategyLoop">
    <option><c:out value="${strategyLoop[index]}"/></option>

  </c:forEach>
</select>

获取空白选项

代码语言:javascript
复制
<select>
 <option value="all_qns">All</option>
 <option></option>
 <option></option>
 <option></option>
 <option></option>
 <option></option>
 <option></option>
</select>

另外,我还有一段名为json_obj_mjson data

代码语言:javascript
复制
{"a":"1050","b":"1079","c":"1073","d":"1074"}

我a=have试了一下:

代码语言:javascript
复制
<c:forEach items="${json_obj_m}" var="met">
 <option value="${met.key}">${met.value}</option>
</c:forEach>

但是不能再工作了,出错了,那个spring不支持key

有没有人能告诉我哪里做错了,这是Java/Spring的新手。提前谢谢。

EN

回答 2

Stack Overflow用户

发布于 2014-07-15 22:34:34

您对JSTP foreach的使用是不正确的:您在strategy中获取了值,并尝试使用(糟糕的) strategyLoop,这就是状态。你应该简单地写:

代码语言:javascript
复制
<option>${strategy}</option>

状态有助于计算迭代次数,您可以使用${strategyLoop.index}${strategyLoop.count}

  • strategyLoop.index开始于0
  • strategyLoop.count开始于1
票数 1
EN

Stack Overflow用户

发布于 2014-07-15 23:20:13

要迭代列表,请使用以下代码:

代码语言:javascript
复制
<select id="someId">
  <option value="all_qns">All</option>
  <c:forEach var="strategy" items="${json_obj}" >
    <option value="${strategy}">${strategy}</option>

  </c:forEach>
</select>

如果你通过Ajax call获得JSON,你可以使用这个(通过JavaScript):

代码语言:javascript
复制
$.each(data, function(key, value) { 
         $('#someId').append("<option value="+key+"option>"+value+"</option>");  
    });
});
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/24760488

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档