2020-09-08 09:42发布
加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)
嗨,
我有以下情况:
我有一张带两个组合框的桌子。 从ComboBox1中选择一个值后,我想填充ComboBox2的列表。
我在绑定每行级别的动态列表时遇到困难。 我通读了两个问题,但找不到类似的情况。 因为我需要在每行有一个不同的列表,一旦从ComboBox1中选择了一个值,就需要呈现该列表。 有人可以协助我采取这种方法。
嗨,我有类似的情况。
1/我用以下结构定义了一个JSON模型(名称:comboxvalues),其中包含第二个组合框的所有可能值:
{: [ { 键:<值>, 文字:<值> } ] } 举个例子: { list_a:[ { 键:key_a1, 文字:value_a1 }, { 键:key_a2, 文字:value_a2 }, { 键:key_a3, 文字:value_a3 } ], list_b:[ { 键:key_b1, 文字:value_b1 }, { 键:key_b2, 文字:value_b2 }, { 键:key_b3, 文字:value_b3 } ] }
2/我在视图中设置了第一个组合框,该组合框代表了可能的值列表,并绑定了selectedKey属性
<组合框 id =" combobox1" selectedKey =" {combobox1_selectedkey}" >
对于此示例,我直接设置了组合框的聚合,但是最好将聚合绑定与" items"聚合一起使用。
3/我基于sap.m.ComboBox控件开发了一个自定义组合框控件,并带有新的属性listid。 每次设置和更改listid时,我都会重新绑定项目。
sap.ui.define([ " sap/m/ComboBox" ],函数(组合框){ "使用严格"; return ComboBox.extend(" my.library.control.MyComboBox",{ 元数据:{ 属性:{ " listid":{type:" string"} } }, 渲染器:" sap.m.ComboBoxRenderer", setListid:函数(sValue){ this.setProperty(" listid",sValue); if(sValue && this._oldListId!== sValue){ var oTemplate = new sap.ui.core.ListItem({ 键:" {comboxvalues>键}", 文字:" {comboxvalues>文字}" }); this.bindItems({ 路径:" comboxvalues>/" + sValue, template:oTemplate, templateShareable:true }); //我们清除selectedKey if(this._oldListId && this._oldListId!== sValue){ this.setSelectedKey(""); } //设置旧的下拉列表ID this._oldListId = sValue; } } }); });
4/我用自定义组合框定义了第二个组合框,并将listid属性绑定为与第一个组合框的selectedKey属性相同的值
因此,每次更改第一个组合框的selectedKey的值时,都会自动重新呈现第二个组合框的项目。
我希望这是您想要的。
问候
面料
没什么不同,只需将列表放在每一行
最多设置5个标签!
嗨,我有类似的情况。
1/我用以下结构定义了一个JSON模型(名称:comboxvalues),其中包含第二个组合框的所有可能值:
2/我在视图中设置了第一个组合框,该组合框代表了可能的值列表,并绑定了selectedKey属性
对于此示例,我直接设置了组合框的聚合,但是最好将聚合绑定与" items"聚合一起使用。
3/我基于sap.m.ComboBox控件开发了一个自定义组合框控件,并带有新的属性listid。 每次设置和更改listid时,我都会重新绑定项目。
4/我用自定义组合框定义了第二个组合框,并将listid属性绑定为与第一个组合框的selectedKey属性相同的值
因此,每次更改第一个组合框的selectedKey的值时,都会自动重新呈现第二个组合框的项目。
我希望这是您想要的。
问候
面料
没什么不同,只需将列表放在每一行
一周热门 更多>