SAPUI5:如何使select字段为只读

时间:2014-10-02 20:43:17

标签: sapui5

我使用sap.m库制作了一个组合框:

var oSelection = new sap.m.ComboBox({
    name:   <name>,
    id:     <id>,
    items: {
        <items here>
        })
    },
});

现在,我如何让这个字段只读,所以当我在移动设备上点按它时,它不会调出移动设备的键盘,但它会提出选择选项吗? 我尝试使用editable: false,但它会与键盘一起禁用选择。

谢谢。

2 个答案:

答案 0 :(得分:2)

根据我的发现,没有任何方法允许这种行为。

我个人不会建议的一个选项是访问HTML DOM并禁用组成sap.m.Combobox组件的输入字段。

请记住,如果开发SAPUI5更改了Combobox组件的内部工作方式,则在更新SAPUI5库时可能会破坏代码。

这就是说,要使用此选项,您可以执行以下操作:

        oSelection.onAfterRendering = function() {
            if (sap.m.ComboBox.prototype.onAfterRendering) {
              sap.m.ComboBox.prototype.onAfterRendering.apply(this);
            }
            document.getElementById("<id>-inner").disabled=true;
        }

替换&lt; id&gt; -inner由给予组件的正确ID。

使用SAPUI5开发工具包的1.22.8版进行了测试。

答案 1 :(得分:0)

使用 sap.m.Select 代替 sap.m.ComboBox
选择不提供编辑字段内容的功能。

在许多情况下,Select控件可以直接替换ComboBox,而无需对属性或项目聚合进行任何其他更改!