Json 使用数据绑定从SAPUI5多输入字段中删除令牌
在我的SAPUI5应用程序中,我使用了一个多输入字段,其中包含绑定到JSON模型的令牌。新添加的条目保存在JSON模型中。但是,当通过按令牌文本旁边的x删除令牌时,该令牌将从多输入字段中消失。但当添加新令牌时,删除的令牌会重新出现。 如何确保删除的条目也从JSON模型中删除 这是我将令牌添加到模型的当前代码:Json 使用数据绑定从SAPUI5多输入字段中删除令牌,json,input,sapui5,token,Json,Input,Sapui5,Token,在我的SAPUI5应用程序中,我使用了一个多输入字段,其中包含绑定到JSON模型的令牌。新添加的条目保存在JSON模型中。但是,当通过按令牌文本旁边的x删除令牌时,该令牌将从多输入字段中消失。但当添加新令牌时,删除的令牌会重新出现。 如何确保删除的条目也从JSON模型中删除 这是我将令牌添加到模型的当前代码: multiInputField.addValidator(function(args){ MessageBox.confirm("Do you really
multiInputField.addValidator(function(args){
MessageBox.confirm("Do you really want to add Token\"" + args.text + "\"?", {
onClose: function(oAction) {
if (oAction === MessageBox.Action.OK){
var oToken = new Token({key: args.text, text: args.text});
args.asyncCallback(oToken);
var aFields = sap.ui.getCore().getView().getModel("myModel").getProperty("/Tokens");
var oNewFields= {
Tokens: args.text
};
aFields .push(oNewFields);
sap.ui.getCore().getView().getModel("myModel").setProperty("/Tokens", aFields );
sap.ui.getCore().getView().getModel("myModel").refresh();
} else {
args.asyncCallback(null);
}
},
title: "Add Token"
});
return sap.m.MultiInput.WaitForAsyncValidation;
});
我想我们可以使用tokenUpdate事件来实现这一点 例如,假设我的视图中有此多重输入:
<MultiInput width="500px" id="multiInput" suggestionItems="{ path: 'dataModel>/data'}" showValueHelp="true" tokenUpdate="onTokenUpdate">
<core:Item key="{dataModel>key}" text="{dataModel>value}"/>
</MultiInput>
}我想我们可以使用tokenUpdate事件进行此操作 例如,假设我的视图中有此多重输入:
<MultiInput width="500px" id="multiInput" suggestionItems="{ path: 'dataModel>/data'}" showValueHelp="true" tokenUpdate="onTokenUpdate">
<core:Item key="{dataModel>key}" text="{dataModel>value}"/>
</MultiInput>
}为什么不使用令牌的delete事件并从Json模型中删除相关实体?据我所知,您只需处理添加令牌的问题,而没有处理删除令牌的问题。我对SAPUI5开发相对较新。我可以在何处以及如何将delete事件添加到令牌中?为什么不使用令牌的delete Event并从Json模型中删除相关实体?据我所知,您只需处理添加令牌的问题,而没有处理删除令牌的问题。我对SAPUI5开发相对较新。在何处以及如何将删除事件添加到令牌?
{
"data": [
{
"key": "token1",
"value": "token1"
},
{
"key": "token2",
"value": "token2"
}
]