分段按钮OpenUI5 setSelectedButton

时间:2015-10-20 11:27:22

标签: javascript sapui5

我正在尝试使用SegmentedButton,中的var navCheck = new sap.m.SegmentedButton({ items: [ new sap.m.SegmentedButtonItem("Off", {text: "Navigation Off"}), new sap.m.SegmentedButtonItem("On", {text: "Navigation On"}) ], select: function () { } }); 功能,但我无法更改按钮。
例如:

setSelectedButton("On");

当我使用{{1}}时,SegmentedButton元素会停止选择任何项目。

选中JSBin

2 个答案:

答案 0 :(得分:1)

根据我到目前为止所学到的,sap.m.SegmentedButtonItem控件具有属性oButton,其中包含按钮的实际ID(您的ID" on"以及" Off&#34 ;得到"父"控制,而不是按钮本身)。 我在这里解决了这个问题:

doSomething: function() {
    var test = sap.ui.getCore().byId("Test");
    var oButton = sap.ui.getCore().byId("On");
    test.setSelectedButton(oButton.oButton.getId());
}

这是JSBIN示例:LINK

如果有人有更好的解决方案,我很乐意看一下。

答案 1 :(得分:1)

您可以使用传入ID的setSelectedButton,但您需要验证您使用的是完整ID,包括任何父聚合ID ...

最简单的方法是使用新的UI5 chrome检查器并选择按钮以查看按钮的整个ID。然后在您的代码中确保使用正确的预先设置的聚合ID构建ID。

德里克