从SapUI5中的复选框中获取值

时间:2015-09-17 13:44:47

标签: sapui5

我有一个main.controller.js,我想检查一个Checkbox的值。如果选中该复选框,将显示第一个flexbox,第二个flexbox将不会显示在片段中。

这是我的controller.js:

checkDone: function () {
    var checkV = this.byId("ch1").getSelected();// not working
}

这是我的 fragment.xml

<CheckBox id="ch1" select ="checkDone" text="Check"></CheckBox>
<FlexBox class="sapUiSmallMarginEnd" id="f1">
    <Input value=""></Input>
</FlexBox>
<FlexBox direction="Column" id="f2">
    <Input value=""></Input>
</FlexBox>  

3 个答案:

答案 0 :(得分:0)

而不是getSelected()尝试getChecked()

getChecked()将根据选中/取消选中返回true或false。

答案 1 :(得分:0)

此代码有效(请参阅sap.m.Checkbox here的示例)。

只是一个建议:在您使用的复选框'select'处理程序中:

this.byId("ch1").getSelected();

是否选中了复选框,但此值已作为select处理程序的参数给出:

checkDone: function (oEvent) {
     var bSelected = oEvent.getParameter('selected'));
}

Simmilar适用于sap.ui.commons.Checkbox API。检查change event

答案 2 :(得分:0)

看起来View.byId函数以初始形式返回一个元素。当您从DOM找到元素时,getSelected()函数按预期工作。