我有一份记录清单。要显示列表,我使用的是sap.m.SelectDialog:
<SelectDialog id="idSelDgAddSupervisor" confirm="handleConfirm" growingThreshold="2000" growing="true" showClearButton="true"
items="{items}" multiSelect="true"
liveChange="handleSearch" title="{i18n>Choose}"
autoAdjustWidth="true" growingScrollToLoad="true">
<StandardListItem id="idItem" description="{Name}"
iconDensityAware="false" iconInset="false"
title="{Plant}" type="Active"/>
</SelectDialog>
最重要的是,如果用户选择了多个条目,我在handleConfirm()函数中放了一个“警告”消息框。像这样的东西:
什么现在正好发生当用户选择多一个条目时,它会显示警告消息,但它会在显示弹出窗口之前关闭选择弹出窗口。
我想要实现什么当用户点击警告消息中的“确定”按钮时,它应该返回到条目选择屏幕,并且选择弹出框不应该关闭,直到用户只选择一个条目。
可能吗?提前致谢。
我找到了解决方案。我所做的是,在对话框的onClose事件中,我销毁了对话框的id,并在销毁id之后重新打开了相同的对话框(以便保存我的代码以免产生“duplicated element id”错误)。
我认为selectDialog自动关闭。
您现在可以通过设置一个您可以在事件中打开和关闭的选择对话框来绕过它。
同样地,我明白你的用户只能选择一个条目,为什么multiSelect是真的?如果将其设置为false,则只会选择一个条目,而不需要输入警告对话框。