0

这是我在基于 sencha 的应用程序中使用的代码,其中我想添加一个警报提示输入您的密码!当indexpnl启动时。这里的代码

var mainContainer = Ext.create('Ext.Panel', {
    id: 'mainContainer',
    layout: 'card',
    width: '100%',
    height: '100%',
    showAnimation: {
                    type: 'slideIn',
                    direction: 'right'
                   },
    items: [indexpnl,loginpnl,registerpnl,homepnl,viewitemspnl,forgpanel,myfriendpro,notifypanel,mapapnel,friendviewitemspnl]
    });
    Ext.Viewport.add({
        xtype: 'panel',
        items: [mainContainer]
    });

警报

 function alertprompt()
 {
 var retVal = prompt("Enter your password? ", "Password");
 }

当应用程序启动时 indexpnl 首先显示。我想显示上面的警报。我应该在哪里调用方法 alertprompt() 在启动时显示?请帮助解决这个问题

4

3 回答 3

1

我假设您正在调用Ext.onReady();调用您的函数,该函数显示indexpnl.

让我们假设这个函数是start()

function start() {
    //do your panel rendering to where ever
    alertprompt();
}
于 2013-10-08T05:17:32.213 回答
0

嗨,您可以使用此侦听器,只需添加以下代码

听众:{

         afterrender:function(t,eOpts){

            alert("Enter your password");

        }

      }
于 2013-10-08T05:31:50.850 回答
0

如果您使用启动功能将 xtype 添加到您的视口中。你可以在那里使用“Ext.Msg.prompt(...)”。密码获取成功后,您可以将面板添加到视口中。注意:我假设您将在密码验证后显示您的主容器。例如:`

    launch:function(){
     Ext.Msg.prompt('Authentication Process!','Please enter your password:', function(button,text){
       if(button=='ok'){
         //Do your password validation here. Then add your panel into the Viewport
       }
       else
       {
         Ext.Msg.alert('Reload the application and give your password');
       }
     });
   },

`

于 2013-10-08T05:37:32.697 回答