Navigator在OneUI中工作正常但在BootStrap中没有

时间:2015-07-17 17:40:40

标签: twitter-bootstrap xpages navigator

我创建了一个Navigator Control,它根据用户选择的应用程序显示不同的Navigator。当我使用OneUI应用程序主题运行带有此控件的页面时它工作正常,但当我切换到Bootstrap3.2.0时只有前三个项目(编辑:找到一个导航器,前4个工作,但其余不工作 - 在导航器菜单中包含一个链接,看不到任何相关性。其余的人什么都不做。 Bootstrap navigator

“个人档案”,“应用程序”和“业务代表日志”链接正常工作,但其余部分似乎都没有附加链接。我可以选择任何应用程序,并且所有结果导航器的功能都相同 - 前三个项目有链接,其余的没有,但在OneUI中它们都有链接。此页面使用Bootstrap Application Layout作为模板。 这是导航器控件的代码:

<?xml version="1.0" encoding="UTF-8"?>
<xp:view xmlns:xp="http://www.ibm.com/xsp/core" 
xmlns:xe="http://www.ibm.com/xsp/coreex"
    xmlns:xc="http://www.ibm.com/xsp/custom">
    <xp:this.resources>
        <xp:script src="/js Utils.jss" clientSide="false"></xp:script>
    </xp:this.resources>
    <xp:panel style="width:150px" id="panelSelectApp">
        <xp:this.readonly><![CDATA[#{javascript:!viewScope.get("vsReadOnly")}]]></xp:this.readonly>
        <xe:dropDownButton id="selectApp" style="width:200px">
            <xe:this.treeNodes>
                <xe:basicContainerNode>
                    <xe:this.label>
                        <![CDATA[#{javascript:var s:String = sessionScope.ssApplication;
(s == null || s == "")? "-- Select An Application --" : s;}]]>
                    </xe:this.label>
                    <xe:this.children>
                        <!--
                            ssAppMenu is a session Scope Bean that returns a list of valid
                            Navigator custom Controls
                        -->
                        <xe:repeatTreeNode var="thisApp" indexVar="index"
                            loaded="true" value="#{javascript:ssAppMenu.get();}">

                            <xe:this.children>
                                <xe:basicLeafNode label="#{javascript:thisApp}"
                                    submitValue="#{javascript:thisApp}">
                                </xe:basicLeafNode>
                                <xe:separatorTreeNode loaded="true">
                                </xe:separatorTreeNode>
                            </xe:this.children>
                        </xe:repeatTreeNode>
                    </xe:this.children>
                </xe:basicContainerNode>
            </xe:this.treeNodes>

            <xe:this.rendered><![CDATA[#{javascript:(viewScope.get("vsReadOnly")) ? false : true}]]>
            </xe:this.rendered>
            <xp:eventHandler event="onItemClick" submit="true"
                refreshMode="partial" refreshId="panelSelectApp">
                <xe:this.action><![CDATA[#{javascript:var value=context.getSubmittedValue();

if(value==null || value=="" || value == "-- Select An Application --") {
    sessionScope.put("ssApplication","")
    sessionScope.put("ssSelectedNavigator","");
    sessionScope.put("ssSelectedView","");
    getComponent('dynamicContentMainView').show(null);
    getComponent('dynamicNavigator').show(null);
    return;
}else {
    clearCategory();
    sessionScope.put("ssApplication",value);
    /*appProps is a Managed Application Scope been which contains a number of properties specific to 
    each application for example navName returns the name of the control which defines this specific 
    navigator & ssApplication contains the name of the current Application.
    */
    sessionScope.put("ssSelectedNavigator", appProps[sessionScope.ssApplication].navName);
    sessionScope.put("ssSelectedView", appProps[sessionScope.ssApplication].defaultView);
    getComponent('dynamicContentMainView').show(null);
    getComponent('dynamicNavigator').show(null);
}}]]></xe:this.action>
                <xp:this.onComplete>
                    <![CDATA[XSP.partialRefreshGet("#{id:dynamicContentMainView}");]]>
                </xp:this.onComplete>
            </xp:eventHandler>
        </xe:dropDownButton>

        <xp:panel id="panelNavigator" style="width:150px">
            <xe:dynamicContent id="dynamicNavigator">
                <xe:dynamicContent id="dynamicNavigatorControl">
                    <xp:include id="customControlIncluder">
                        <xp:this.pageName>
                            <![CDATA[${javascript:var debug:Boolean = false;
if (debug) WFSUtils.sysOut("Selected Navigator = " + sessionScope.ssSelectedNavigator);
sessionScope.ssSelectedNavigator||"ccBlankNavigator.xsp"}]]>
                        </xp:this.pageName>
                    </xp:include>
                </xe:dynamicContent>
            </xe:dynamicContent>
        </xp:panel><!-- panelNavigators -->
    </xp:panel><!-- panelSelectApp -->
</xp:view>

1 个答案:

答案 0 :(得分:1)

Scrapped OneUI并在BootStrap中重写了整个内容。无法弄清楚它为什么会这样做。