0

我的 XHTML 文件中有 Javscript

<script src="test1.js"></script>

现在我还有其他几个 javascripts。它们实际上是主题。

我想让用户灵活地更改他们(javascript 名称)frmo 下拉框。

我试过这种方式

<script src="#{testBean.jsName}</script>

由于它将是 Ajax 更新,所以我更新了该部分并更新了

<h:panelGrid id="jsName">
<script src="#{testBean.jsName}</script>
</h:panelGrid>

这不在表格里面。

当我尝试

    <p:commandButton value="Generate"

actionListener="#{tBean.generateGraph}" update="jsName"></p:commandButton>

它不起作用,因为它说它找不到jsName

我将该网格放在表单中,然后它不会抛出错误,但脚本名称仍将保持不变。

有没有人有更好的想法或任何其他方式来实现它?

4

1 回答 1

1

如果您尝试从表单内的组件更新它,则必须使用 panelGrid 的绝对 id,否则 primefaces 将尝试使用jsName表单内的 id 更新某些内容。当您想使用绝对 id 时,您必须在前面加上:. 因此,请尝试以下按钮:

<p:commandButton value="Generate" actionListener="#{tBean.generateGraph}" update=":jsName"/>
于 2013-07-23T09:18:52.987 回答