【问题标题】:unable to Capture Jstl loop variable in JSP var无法在 JSP var 中捕获 Jstl 循环变量
【发布时间】:2014-10-06 06:24:47
【问题描述】:

我无法在 jsp var 中捕获 jstl 循环变量以用于谷歌地图标记,但我能够在 jsp 页面上打印该值

var markers = [
           <c:forEach var="s" items="${list.rows}">
[<c:out value="${s.latitude}"/>,<c:out value="${s.longitude}"/>]
        </c:forEach>        ];

但似乎 var 标记没有捕获该 jstl 变量。有什么想法吗??

【问题讨论】:

  • 控制台有错误吗?

标签: javascript jsp google-maps-api-3 jstl


【解决方案1】:

我想更好的方法是像下面这样, 初始化数组变量

var markers= new Array();    
           <c:forEach var="s" items="${list.rows}">
markers.push(${s.latitude})
markers.push(${s.longitude})
        </c:forEach>     

并使用.push 方法将其推入数组。使用 EL 让事情变得简单

【讨论】:

  • 感谢 krish 的回答,但我需要以逗号分隔的变量中的 lat long 值,如下所示 var = [23.5,56.6] 有什么建议吗?
  • @shyamkumarArshid 只需将推送线合并为一条,例如 markers.push("'"+${s.latitude}+","+${s.longitude}+"'")
  • @shyamkumarArshid 你可以尝试&lt;fmt:parseNumber&gt; 来格式化值
  • 仍然没有运气伙计们。还有其他想法吗?
  • 尝试打印 ${list} 看它是否有值。只是为了检查问题不在服务器端。
猜你喜欢
  • 2018-03-27
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多