احصل على قيمة التسمية الخاصة بالعقدة الورقية في شريط الأدوات
-
20-12-2019 - |
سؤال
لقد قمت بإنشاء شريط أدوات يحتوي على عدد من basicLeafNodes.في بعض JS في خاصية النمط، أرغب في الحصول على قيمة التصنيف لـ basicLeafNode.لقد حاولت this.label ولكن هذا يلقي والخطأ.إذا تمكنت من الحصول على قيمة التسمية، فيمكنني كتابة مجموعة عامة جدًا من التعليمات البرمجية التي ستكون هي نفسها لكل ورقة في شريط الأدوات.والتي سيكون من الأسهل صيانتها وتوسيعها.هذا طريق طويل من توقف العرض ولكنه سيكون أنيقًا،
المحلول
لا يمكنك فعل ذلك، لأن this
يمثل كائن شريط الأدوات، وليس العقدة الطرفية (كلها كائن عملاق واحد).
ومع ذلك، قد تستخدم repeatTreeNode
وبعض سحر جافا سكريبت (أو يفضل أن يكون فولًا مُدارًا)، يمكن حساب جميع القيم ويمكن أن تكون الإدارة أسهل في المستقبل.
<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>
آمل أن يساعد هذا...
لا تنتمي إلى StackOverflow