当widgetVar的名称是动态生成的时,我在使用中遇到了问题。我们应该如何正确地调用这样的小部件?组件的代码:
<cc:attribute name="id" required="true" type="java.lang.String" />
...
<cc:implementation>
<p:selectOneRadio widgetVar="widgetVariable#{cc.attrs.id}" id="#{cc.attrs.id}" required="false" immediate="#{cc.attrs.immediate}"
value="#{cc.attrs.value}">
<p:ajax event="click" oncomplete="checkRadio()"/>
<cc:insertChildren/>
</p:selectOneRadio>
<script type="text/javascript"></script>
</cc:implementation>
很奇怪,它能够工作,但是当我在页面上使用多个该组件实例时,widgetwar有时会变得混乱,并且为许多组件实例生成javascript。
编辑:一切正常。 无论如何,我有一个新问题。我在这个.js文件中创建了一些全局状态变量。
var state = -1;
function checkRadio() {
var widgetVariable = widgetVariable#{cc.attrs.id}; //HERE PROBLEM
widgetVariable.dosmth(state);
}
但每个状态应该只针对一个组合实例,目前每个组合都使用这个变量,有什么想法吗?
id
长什么样?它包含哪些字符? - user1983983