0

我正在使用 facelet 和 draw 函数有 jstl 标签:

               <ui:define name="content" >
                <h:outputScript name="js/graphics/paths.js"/> 
                <h:outputScript name="js/graphics/draw.js"/> 

调用函数时要评估的标记(这可能吗)?

function showMap(){

 var data = {
        <c:forEach items="${list.KPI}" var="ctag" varStatus="loop">        
            '${ctag.USTER}': ${ctag.Value}
            ${!loop.last ? ',' : ''}
        </c:forEach>
    }     
}

错误:

在此处输入图像描述

是否可以将 jstl 与 facelets 一起使用?为什么我会收到此错误?我正在使用那里的链接:

1) javascript 是否可以从 cforeach 标记中提取值

2)填充-javascript-array-from-jsp-list

4

1 回答 1

1

JSTL 肯定在 Facelets 中工作。只有真正理解 Facelets 生命周期才能理解一些技术含义:JSF2 Facelets 中的 JSTL... 有意义吗?

至于您的具体问题,您很可能忘记在 XML 命名空间中声明 JSTL taglib。

xmlns:c="http://java.sun.com/jsp/jstl/core"

不这样做会导致 JSTL 标记根本不被解释,并最终导致生成的 HTML/JS 代码出现语法错误,因为 Web 浏览器无法将 JSTL 标记识别为有效的 HTML/JS 代码。在 webbrowser 中右键单击页面并执行View Source。您不应该其中看到任何未解析/纯 JSTL 标记。

于 2012-07-31T12:20:53.813 回答