Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/399.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 获取工具栏中leafNode的标签值_Javascript_Xpages_Xpages Extlib - Fatal编程技术网

Javascript 获取工具栏中leafNode的标签值

Javascript 获取工具栏中leafNode的标签值,javascript,xpages,xpages-extlib,Javascript,Xpages,Xpages Extlib,我已经创建了一个包含许多基本节点的工具栏。在style属性中的某些JS中,我希望获得basicLeafNode的标签值。我试过这个。但那会出错。如果我可以得到标签值,那么我就可以编写一个非常通用的代码块,对于工具栏中的每个叶都是相同的。这将更容易维护和扩展。 这离停止显示还有很长的路要走,但这会很整洁,你不能这样做,因为这个代表工具栏对象,而不是叶节点(它都是一个巨大的对象) 但是,您可以使用repeatTreeNode和一些Javascript魔术(或者最好是托管bean),所有值都可以计算出

我已经创建了一个包含许多基本节点的工具栏。在style属性中的某些JS中,我希望获得basicLeafNode的标签值。我试过这个。但那会出错。如果我可以得到标签值,那么我就可以编写一个非常通用的代码块,对于工具栏中的每个叶都是相同的。这将更容易维护和扩展。
这离停止显示还有很长的路要走,但这会很整洁,

你不能这样做,因为
这个
代表工具栏对象,而不是叶节点(它都是一个巨大的对象)

但是,您可以使用
repeatTreeNode
和一些Javascript魔术(或者最好是托管bean),所有值都可以计算出来,未来的管理可能会更容易

    <xe:toolbar id="toolbar1">
        <xe:this.treeNodes>
            <xe:repeatTreeNode var="item">
                <xe:this.value><![CDATA[#{javascript: 
  [{
    "label": "Open",
    "href": "http://www.openntf.org"
  },
  {
    "label": "Search",
    "href": "http://www.google.com"
  }]
}]]></xe:this.value>
                <xe:this.children>
                    <xe:basicLeafNode href="#{item.href}" label="#{item.label}">
                        <xe:this.style><![CDATA[#{javascript:"color:"+(item.label=="Open"?"blue":"red")}]]></xe:this.style>
                    </xe:basicLeafNode>
                </xe:this.children>
            </xe:repeatTreeNode>
        </xe:this.treeNodes>
    </xe:toolbar>


我希望这有助于…

代码将在哪里?在调用“label”之前,您可能需要获得“this”的父级。更理想的可能是计算
styleClass
,而不是
style
,因此如果您以后改变主意,想应用哪些特定的视觉属性,您只需更新样式表即可,无需对XPage代码进行进一步更改。:)谢谢Serdar会考虑做类似的事情。我已经在计算styleClass,检查它是否是所选节点。