点击此处---> 群内免费提供SAP练习系统(在群公告中)加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)大家好, 我正在处理一项自定义...
点击此处---> 群内免费提供SAP练习系统(在群公告中)加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)大家好, 我正在处理一项自定义...
加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)
大家好,
我正在处理一项自定义应用程序要求。 就我而言,我需要在多输入上使用价值帮助。 我在vlaue帮助片段上加载了SelectDialog。 它具有多选选项。 一旦选择了几个值,便在令牌输入中将这些值设置为令牌(带关闭选项的文本)。
如果我在多输入中选择了一个值,则也应在我的值帮助内取消选择该值。 但是我不知道该怎么做?
请帮助我确定解决方案。 请找到下面的代码和图像以获取更多信息。
图片1:
图片2:
控制器代码:
sap.ui.define([ " sap/ui/core/mvc/Controller", " sap/ui/model/json/JSONModel", " sap/ui/model/Filter", " sap/m/MessageToast", " sap/m/Token" ],函数(控制器,JSONModel,过滤器,MessageToast,令牌){ "使用严格"; var aPlant; var aContexts; 返回Controller.extend(" com.zcombo_box_test.controller.MultiInput",{ /** *在实例化控制器并且已经创建其View控件(如果有)时调用。 *可用于在视图显示之前对其进行修改,绑定事件处理程序以及进行其他一次性初始化。 * @memberOf com.zcombo_box_test.view.MultiInput */ onInit:函数(){ var oModel = new JSONModel(jQuery.sap.getModulePath(" com.zcombo_box_test","/util/NotificationType.json"))); this.getView()。setModel(oModel); }, onHandleValuehelp:函数(oEvent){ this.inputId = oEvent.getSource()。getId(); //创建价值帮助对话框 如果(!this._valueHelpDialog){ this._valueHelpDialog = sap.ui.xmlfragment( " com.zcombo_box_test.util.Plant", 这个 ); this.getView()。addDependent(this._valueHelpDialog); } var oListItem = sap.ui.getCore()。byId(" id_list_type"); var oList = this._valueHelpDialog._aSelectedItems; 如果(oList){ oList.pop(); } oList = this._valueHelpDialog._aSelectedItems; this._valueHelpDialog.open(); }, handleValueHelpSearchPlant:函数(oEvent){ var sValue = oEvent.getParameter(" value"); var oFilter = new Filter(" key",sap.ui.model.FilterOperator.EQ,sValue); var oBinding = oEvent.getSource()。getBinding(" items"); oBinding.filter([oFilter]); }, handleValueHelpClosePlant:函数(oEvent){ aPlant = []; aContexts = oEvent.getParameter(" selectedContexts"); 如果(aContexts && aContexts.length){ aContexts.map(function(oContext){ aPlant.push(oContext.getObject()。key); 返回oContext.getObject()。key; })。join(","); }其他{ MessageToast.show("未选择新项目。"); } var oMultiInput = this.byId(this.inputId); 如果(oEvent.sId ==="确认"){ oMultiInput.removeAllTokens(); } for(var plant = 0; plantView.xml:
<页面> <页面标题="标题"> <内容> Fragment.xml:
谢谢
此致
JK。
(34.5 kB)
您好 Jayakrishnan Chandramohan ,
我想您需要手动进行操作 因为它不会照顾它。 在打开弹出窗口之前,请同时在多输入数据和f4help数据上循环并相应地设置所选内容。
如果使用绑定,则将更加容易。 但是我想努力会很相似。
BR,
马西什
一周热门 更多>