我正在使用com.sun.faces
版本2.1.18
。我正在显示一个问题列表,对于一些问题(基于数据库 ID),我想插入一些动态 Javascript。
根据h:outputScript
标签规范,该name
属性的类型为:(javax.el.ValueExpression
必须评估为java.lang.String
)。
但是,这段代码对我有用:
<ui:repeat value="#{js.questionScripts[question.id]}" var="script">
<h:outputScript name="myScript.js" library="js" target="head"/>
</ui:repeat>
但是这段代码不是:
<ui:repeat value="#{js.questionScripts[question.id]}" var="script">
<h:outputScript name="#{script}" library="js" target="head"/>
</ui:repeat>
来自#{question}
围绕<ui:repeat>
问题列表的迭代。
我添加了一个输出来查看它是否#{script}
不为空,但它包含正确的资源名称。
关于如何解决这个问题或实施替代方案的任何想法?