【问题标题】:How to use h:selectOneMenu in f:selectItem?如何在 f:selectItem 中使用 h:selectOneMenu?
【发布时间】:2011-07-04 11:09:09
【问题描述】:
    <h:selectOneRadio id="profiles" layout="pageDirection" value="#{bean.selectedProfile}" style="font-size:12px;">

       <f:selectItem itemValue="0" itemLabel="#{messages.msg_profile1} ">
          <h:selectOneMenu id="countries" value="#{bean.selectedCountry}" required="false"    style="width:190px">
            <f:selectItems value="#{bean.countries}" />
          </h:selectOneMenu>    
        </f:selectItem>

        <f:selectItems value="#{fraudBinPageBean.profiles}"/>    

    </h:selectOneRadio>

我已经在我的应用程序中编写了上述代码。它工作正常。 但是选择显示在单选按钮上方的框。 我的要求是在单选按钮旁边显示选择框。

你能帮我解决什么问题吗?

【问题讨论】:

    标签: jsf


    【解决方案1】:

    您确定它工作正常吗?引用this answer 是不可能的,因为f:selectItem 标记的主体必须为空。

    尝试重新设计您在没有嵌套h:selectOneMenu 的情况下相处的表单。

    【讨论】:

    • 您好,功能正常。问题是设计。选择框显示在单选按钮上方。
    • @venkat:这很有趣。从未尝试过,但呈现的 html 看起来如何?你能把它添加到你的问题中吗?
    • 请看生成的视图源html代码
    【解决方案2】:

    您希望将单选按钮和选择框保持在同一行。这与 CSS 更相关。

    试试这个代码。

        <h:selectOneRadio id="profiles" layout="pageDirection" 
    value="#{bean.selectedProfile}" style="font-size:12px;display:inline">
     <f:selectItems value="#{fraudBinPageBean.profiles}"/>  
       </h:selectOneRadio>
    
        <f:selectItem itemValue="0" itemLabel="#{messages.msg_profile1} ">
                  <h:selectOneMenu id="countries" value="#{bean.selectedCountry}"  required="false"    style="width:190px">
                    <f:selectItems value="#{bean.countries}" />
        </h:selectOneMenu>    
    

    如上代码所示,将 CSS 属性 Display:inline 添加到您的 selectoneradio 样式属性中

    【讨论】:

    • 嗨,Madhu,内联在这里不起作用。请查看生成的视图源 html 代码
    • JSF 单选按钮正在使用单独的表格。
    • @venkat '它在 IE8 中运行良好,我用示例代码进行了测试。您在哪里添加了 style(inline) 属性
    • 我添加到单选按钮。在 IE6 中测试但无法正常工作。
    猜你喜欢
    • 2011-07-17
    • 1970-01-01
    • 1970-01-01
    • 2012-01-04
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-05-05
    相关资源
    最近更新 更多