我正在建立一个小网站,现在我遇到了一个问题:客户希望他的表单元素看起来“花哨”,所以我们必须坚持设计。我用Google搜索jqTransform完全符合我/他的需求。现在:我正在使用seam和richfaces来构建页面。我必须在我的表单上应用jqTransform,但我有几个选项填充其他选项,这会强制我的表单元素上的reRender
,这可能不再是“花式”样式了。有没有办法让jquery插件再次应用到我的组件?
这里澄清的是我的一个xhtmls
<ui:define name="body">
<h:form id="nextForm">
<rich:panel >
<f:facet name="header">Profil</f:facet>
<a:outputPanel id="profilPanel">
<s:decorate id="techTypeField" template="layout/edit.xhtml">
<ui:define name="label">Chosse Tech</ui:define>
<h:selectOneRadio id="techTypeCheckbox" value="#{Profil.technologyType}" required="true" immediate="true">
<s:selectItems value="#{Profil.technologyTypes}" var="elem" label="#{elem.name}" id="typeId"/>
<s:convertEntity/>
<a:support event="onchange" reRender="profilPanel" ajaxSingle="true"/>
</h:selectOneRadio>
</s:decorate>
<s:decorate id="productLineField" template="layout/edit.xhtml" rendered="#{Profil.technologyType.productLines.size > 0}">
<ui:define name="label">Choose Product</ui:define>
<h:selectOneMenu id="productLinesCheckbox" value="#{Profil.productLine}" required="true" immediate="true" styleClass="dropdown">
<s:selectItems value="#{Profil.technologyType.productLines}" var="productLine" label="#{productLine.id.id}" id="productlineId" noSelectionLabel="Choose"/>
<s:convertEntity/>
<a:support event="onchange" reRender="profilPanel" ajaxSingle="true" />
</h:selectOneMenu>
</s:decorate>
<s:decorate id="machineField" template="layout/edit.xhtml" rendered="#{Profil.productLine.machines.size > 0}">
<ui:define name="label">Choose Machine</ui:define>
<h:selectOneMenu id="machinesCheckbox" value="#{Profil.machine}" required="true" styleClass="dropdown">
<s:selectItems value="#{Profil.productLine.machines}" var="machine" label="#{machine.machine}" id="machineId" noSelectionLabel="Choose"/>
<s:convertEntity/>
</h:selectOneMenu>
</s:decorate>
</a:outputPanel>
<div style="clear:both"/>
</rich:panel>
<div class="actionButtons">
<h:commandButton id="next" value="Weiter zu SERVICES"
action="#{Profil.next}" styleClass="button_next"/>
</div>
</h:form>
</ui:define>
答案 0 :(得分:0)
您可以(必须?)在第一个选择框中选择一个选项时进行ajax调用,以填充另一个选项。
有关如何使用jQuery执行此操作的示例,请参阅Auto-populating Select Boxes using jQuery & AJAX。
答案 1 :(得分:0)
我通过使用richface下拉元素解决了我的问题,该元素可以自定义我想要的方式。