13.1.7 如何产生一个弹出窗口

    技术2022-05-11  0

    (根据选择不同单选框,弹出窗的内容不同)   二种方法 方法一:将参数传递给弹出窗口的URL window.open("popup.jsf?country="+ country[i].value, "popup",                         "height=300,width=200,toolbar=no,menubar=no,"                         + "scrollbars=yes");     popup.jsf页面获取country请求参数的值,${param.country} 保存在param.country中。 <h:dataTable value="#{bb.states[param.country]}" var="state"> ^*方法二:隐藏表  <h:form id="hidden" target="popup">        <h:inputHidden id="country" value="#{bb.country}"/> //后面会自动提交隐藏表单,contry值会传到BackingBean了         <h:commandLink id="go" action="showStates"/>  </h:form> document.getElementById("hidden:country").value = country[i].value;                      document.getElementById("hidden:go").onclick(null);  <h:dataTable value="#{bb.statesForCountry}" var="state">                <h:column>                   <h:outputLink value="#"                      οnclick="doSave('#{state}');">                      <h:outputText value="#{state}" />                   </h:outputLink>                </h:column>             </h:dataTable> BackingBean.java部分代码如下:  private String country = "USA";  public String[] getStatesForCountry() { return (String[]) states.get(country); }    static {       states = new HashMap<String, String[]>();       states.put("USA",          new String[] {             "Alabama", "Alaska"});       states.put("Canada",          new String[] {             "Alberta", "British Columbia"});

    附件:csdn空间6/testCoreJSF.rar


    最新回复(0)