首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >JSPX下拉列表

JSPX下拉列表
EN

Stack Overflow用户
提问于 2012-04-20 13:20:41
回答 3查看 1.6K关注 0票数 0

我正在使用jdeveloper 11.1.2.0.0编写一个oracle ADF融合web应用程序。在jspx页面中,我有一个由菜单模型填充的下拉列表。我希望它在页面加载到浏览器中时显示为展开。请给我一个想法。

感谢Sameera

EN

回答 3

Stack Overflow用户

发布于 2012-04-21 07:38:07

考虑使用其他类型的组件,而不是下拉列表。例如,如果只使用迭代器来显示选项列表呢?

票数 1
EN

Stack Overflow用户

发布于 2012-04-24 23:41:18

不存在触发本机dropdown元素公开的编程(意思是javascript)方式。正如其他人所建议的,考虑使用不同的UI策略。也许是一个可选择的af:table?

票数 0
EN

Stack Overflow用户

发布于 2012-04-26 02:24:22

确实,没有直接的或编程的方法来模拟下拉菜单上点击事件的触发来打开它,但您可以通过以下代码来实现这一点。您需要的是:

  1. jquery-1.7.1.min.js
  2. ExpandSelect.js

提供SelectItem列表的bean是:

代码语言:javascript
复制
import java.util.ArrayList;
import java.util.List;

import javax.faces.model.SelectItem;

public class BackBean {
    private List<SelectItem> options;

    public BackBean() {
        options = new ArrayList<SelectItem>(0);
        options.add(new SelectItem("Option 1", "Option 1"));
        options.add(new SelectItem("Option 2", "Option 2"));
        options.add(new SelectItem("Option 3", "Option 3"));
        options.add(new SelectItem("Option 4", "Option 4"));
        options.add(new SelectItem("Option 5", "Option 5"));
    }

    public void setOptions(List<SelectItem> options) {
        this.options = options;
    }

    public List<SelectItem> getOptions() {
        return options;
    }
}

而jspx页面是:

代码语言:javascript
复制
<?xml version='1.0' encoding='UTF-8'?>
<jsp:root xmlns:jsp="http://java.sun.com/JSP/Page" version="2.1" xmlns:f="http://java.sun.com/jsf/core"
          xmlns:af="http://xmlns.oracle.com/adf/faces/rich">
    <jsp:directive.page contentType="text/html;charset=UTF-8"/>
    <f:view>
        <af:document title="Home" id="d1">
            <af:form id="f1">
                <af:resource type="javascript" source="/js/jquery-1.7.1.min.js"/>
                <af:resource type="javascript" source="/js/ExpandSelect.js"/>
                <af:panelStretchLayout id="psl1">
                    <f:facet name="center">
                        <af:selectOneChoice label="Menu" id="soc1" clientComponent="true" styleClass="menu">
                            <f:selectItems value="#{backingBeanScope.backBean.options}" id="si1"/>
                        </af:selectOneChoice>
                    </f:facet>
                </af:panelStretchLayout>
            </af:form>            
            <af:resource type="javascript">
                $(document).ready(function(){                    
                    ExpandSelect(document.getElementById($($('.menu > tbody > tr > td').next().find('select')).attr('id')));
                });
            </af:resource>            
        </af:document>
    </f:view>
</jsp:root>

这是我的截图:

希望这能有所帮助。让我知道你的反馈。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/10240686

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档