无法关闭sap.m.dialog,因为它与setTimeout发生冲突

2020-09-22 22:31发布

         点击此处--->   EasySAP.com群内免费提供SAP练习系统(在群公告中)

加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)


嗨,

我无法通过单击关闭按钮来手动关闭对话框。

我希望通过用户单击关闭按钮或3秒后自动关闭对话框。 为了自动关闭对话框,我在setTimeout jquery中调用closeDialog函数。 对话框将通过setTimeout关闭,但在用户手动单击时不会关闭。

以下是应用程序中使用的代码:

打开对话框后,在3秒钟后自动关闭:
 openDialog:function(){
 dialog.open();
 setTimeout(function(){
     this.onCloseDialog();
 },3000);
 },
 onCloseDialog:function(){
    this.getView()。byId(" idDialog")。close();
 },
 

请向我建议如何使对话框的手动关闭与自动关闭一起工作。

谢谢

Saurabh。

         点击此处--->   EasySAP.com群内免费提供SAP练习系统(在群公告中)

加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)


嗨,

我无法通过单击关闭按钮来手动关闭对话框。

我希望通过用户单击关闭按钮或3秒后自动关闭对话框。 为了自动关闭对话框,我在setTimeout jquery中调用closeDialog函数。 对话框将通过setTimeout关闭,但在用户手动单击时不会关闭。

以下是应用程序中使用的代码:

打开对话框后,在3秒钟后自动关闭:
 openDialog:function(){
 dialog.open();
 setTimeout(function(){
     this.onCloseDialog();
 },3000);
 },
 onCloseDialog:function(){
    this.getView()。byId(" idDialog")。close();
 },
 

请向我建议如何使对话框的手动关闭与自动关闭一起工作。

谢谢

Saurabh。

付费偷看设置
发送
4条回答
clever101
1楼 · 2020-09-22 23:30.采纳回答

我在定义对话框时确实使用了" this"。

oDialog = sap.ui.xmlfragment(oView.getId()," sap.ui.demo.wt.view.HelloDialog",此);

我后来用全局控制器引用变量替换了" this",然后关闭功能开始起作用。

oDialog = sap.ui.xmlfragment(oView.getId()," sap.ui.demo.wt.view.HelloDialog",globalControllerRefVar);

现在可以正常工作了。

感谢您的建议。

d56caomao
2楼-- · 2020-09-22 23:14

您好,

 this.infooDialog = sap.ui.xmlfragment(" ",this);
 onCloseDialog:function(){
    this.infooDialog.destroy();
 },
 
小c菟菟
3楼-- · 2020-09-22 23:12
尝试一下
 onCloseDialog:function(){
    dialog.close();  },

或this.dialog.close();

huskylover
4楼-- · 2020-09-22 23:24

尝试使用一些jQuery。

 $('。close')。click(function(){
   //调用方法以关闭对话框
 });
 

一周热门 更多>